39 lines
925 B
Python
39 lines
925 B
Python
from uuid import UUID
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class RiderCreate(BaseModel):
|
|
name: str
|
|
ftp: float | None = None
|
|
lthr: int | None = None
|
|
weight: float | None = None
|
|
goals: str | None = None
|
|
experience_level: str | None = None
|
|
|
|
|
|
class RiderUpdate(BaseModel):
|
|
name: str | None = None
|
|
ftp: float | None = None
|
|
lthr: int | None = None
|
|
weight: float | None = None
|
|
zones_config: dict | None = None
|
|
goals: str | None = None
|
|
experience_level: str | None = None
|
|
|
|
|
|
class RiderResponse(BaseModel):
|
|
model_config = {"from_attributes": True}
|
|
|
|
id: UUID
|
|
telegram_id: int | None = None
|
|
telegram_username: str | None = None
|
|
avatar_url: str | None = None
|
|
name: str
|
|
ftp: float | None = None
|
|
lthr: int | None = None
|
|
weight: float | None = None
|
|
zones_config: dict | None = None
|
|
goals: str | None = None
|
|
experience_level: str | None = None
|