Add initial project
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
"""WorkoutSession Pydantic schemas."""
|
||||
from pydantic import BaseModel
|
||||
from typing import Optional
|
||||
from datetime import datetime
|
||||
|
||||
|
||||
class WorkoutSessionBase(BaseModel):
|
||||
"""Base schema for workout session."""
|
||||
start_time: datetime
|
||||
end_time: Optional[datetime] = None
|
||||
activity_type: str
|
||||
activity_type_id: Optional[int] = None
|
||||
duration_seconds: int = 0
|
||||
distance_meters: float = 0.0
|
||||
calories: float = 0.0
|
||||
avg_pace: Optional[float] = None
|
||||
max_pace: Optional[float] = None
|
||||
min_pace: Optional[float] = None
|
||||
avg_hr: Optional[int] = None
|
||||
max_hr: Optional[int] = None
|
||||
min_hr: Optional[int] = None
|
||||
notes: Optional[str] = None
|
||||
|
||||
|
||||
class WorkoutSessionCreate(WorkoutSessionBase):
|
||||
"""Schema for creating a workout session."""
|
||||
pass
|
||||
|
||||
|
||||
class WorkoutSessionResponse(WorkoutSessionBase):
|
||||
"""Schema for workout session response."""
|
||||
id: int
|
||||
user_id: int
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
Reference in New Issue
Block a user