feat: complete UI tasks, backend optimizations, coupon admin, user kundli

This commit is contained in:
2026-07-10 12:36:56 +05:30
parent 149d365218
commit d5199682e3
16 changed files with 782 additions and 78 deletions

View File

@@ -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)