This commit is contained in:
2025-12-13 14:39:50 +03:00
commit b666cdcb95
79 changed files with 3081 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
from pydantic import BaseModel, Field
from typing import Optional
from datetime import datetime
class RewardBase(BaseModel):
title: str = Field(..., max_length=255)
description: Optional[str] = None
image_url: Optional[str] = None
points_required: int = Field(default=1, ge=1)
class RewardCreate(RewardBase):
pass
class RewardUpdate(BaseModel):
title: Optional[str] = Field(None, max_length=255)
description: Optional[str] = None
image_url: Optional[str] = None
points_required: Optional[int] = Field(None, ge=1)
is_claimed: Optional[bool] = None
class RewardInDB(RewardBase):
id: str
user_id: str
is_claimed: bool = False
created_at: datetime
updated_at: datetime
class Config:
from_attributes = True
class Reward(RewardInDB):
pass