feat: complete UI tasks, backend optimizations, coupon admin, user kundli
This commit is contained in:
@@ -119,6 +119,23 @@ class Test(SQLModel, table=True):
|
||||
is_active: bool = Field(default=True)
|
||||
created_by: UUID
|
||||
|
||||
class Transaction(SQLModel, table=True):
|
||||
id: UUID = Field(default_factory=uuid4, primary_key=True)
|
||||
user_id: UUID = Field(foreign_key="user.id")
|
||||
amount: float
|
||||
tier: str
|
||||
status: str
|
||||
created_at: datetime = Field(default_factory=datetime.utcnow)
|
||||
|
||||
class Coupon(SQLModel, table=True):
|
||||
id: UUID = Field(default_factory=uuid4, primary_key=True)
|
||||
code: str = Field(unique=True, index=True)
|
||||
discount_percent: float
|
||||
max_discount_amount: float
|
||||
is_active: bool = Field(default=True)
|
||||
expires_at: Optional[datetime] = None
|
||||
created_at: datetime = Field(default_factory=datetime.utcnow)
|
||||
|
||||
class Attempt(SQLModel, table=True):
|
||||
id: UUID = Field(default_factory=uuid4, primary_key=True)
|
||||
user_id: UUID = Field(foreign_key="user.id")
|
||||
@@ -132,6 +149,7 @@ class Attempt(SQLModel, table=True):
|
||||
total_questions: int
|
||||
accuracy: float = Field(default=0.0)
|
||||
status: str = Field(default="In_Progress") # In_Progress, Submitted, Timed_Out
|
||||
is_retake: bool = Field(default=False)
|
||||
|
||||
class Mistake(SQLModel, table=True):
|
||||
id: UUID = Field(default_factory=uuid4, primary_key=True)
|
||||
|
||||
Reference in New Issue
Block a user