Files
verify/backend/app/models/enums.py
Mohamed Mathar Irfan ed6610d5d8 Initial project upload
2026-07-28 17:57:02 +05:30

66 lines
1.5 KiB
Python

from enum import Enum
class ProductAdminRole(str, Enum):
"""Level 1 — VerifyPack internal staff."""
super_admin = "super_admin"
admin = "admin"
finance = "finance"
support = "support"
class ClientRole(str, Enum):
"""Level 2 — roles inside a client organization."""
admin = "admin"
finance = "finance"
user = "user"
class SubscriptionStatus(str, Enum):
active = "active"
grace = "grace" # 30 days after expiry: read-only, verify still works
archived = "archived" # verify still works, no new products/batches/QRs
deleted = "deleted" # no access, data retained
class ProductStatus(str, Enum):
active = "active"
inactive = "inactive"
draft = "draft"
archived = "archived"
class QRType(str, Enum):
batch = "batch" # Option 1 — one QR for the whole batch
per_pack = "per_pack" # Option 2 — unique serialized QR per pack
class QRStatus(str, Enum):
active = "active"
inactive = "inactive"
expired = "expired"
draft = "draft"
disabled = "disabled"
class ComplianceStatus(str, Enum):
complete = "complete"
pending = "pending"
expired = "expired"
expiring = "expiring" # within 30 days
class VerificationState(str, Enum):
genuine = "genuine"
unverified = "unverified"
not_found = "not_found"
recalled = "recalled"
class PaymentStatus(str, Enum):
paid = "paid"
pending = "pending"
failed = "failed"
refunded = "refunded"
overdue = "overdue"