25 lines
580 B
Python
25 lines
580 B
Python
from typing import List, Optional
|
|
from pydantic import BaseModel
|
|
from datetime import date
|
|
|
|
|
|
class ApproachDTO(BaseModel):
|
|
id: Optional[int] = None
|
|
exercise_id: Optional[int] = None
|
|
weight: float
|
|
reps: int
|
|
|
|
|
|
class ExerciseDTO(BaseModel):
|
|
id: Optional[int] = None
|
|
training_id: Optional[int] = None
|
|
name: str
|
|
splitted_weight: bool = False
|
|
approaches: Optional[List[ApproachDTO]] = None
|
|
|
|
|
|
class TrainingDTO(BaseModel):
|
|
id: Optional[int] = None
|
|
date: date
|
|
trainer: Optional[str] = None
|
|
exercises: Optional[List[ExerciseDTO]] = None
|