Files
popa_minecraft_launcher_api/app/models/user.py

41 lines
1.1 KiB
Python

from pydantic import BaseModel
from datetime import datetime
from typing import Optional
class UserCreate(BaseModel):
username: str
password: str
class UserLogin(BaseModel):
username: str
password: str
class UserInDB(BaseModel):
username: str
hashed_password: str
uuid: str
skin_url: Optional[str] = None
skin_model: Optional[str] = "classic"
cloak_url: Optional[str] = None
coins: int = 0 # Новое поле для монет
total_time_played: int = 0 # Общее время игры в секундах
is_active: bool = True
created_at: datetime = datetime.utcnow()
code: Optional[str] = None
telegram_user_id: Optional[int] = None
telegram_username: Optional[str] = None
is_verified: bool = False
code_expires_at: Optional[datetime] = None
is_admin: bool = False
expires_at: Optional[datetime] = None
class Session(BaseModel):
access_token: str
client_token: str
user_uuid: str
expires_at: datetime
class VerifyCode(BaseModel):
username: str
code: str
telegram_user_id: int
telegram_username: Optional[str] = None