Files

48 lines
1.4 KiB
Python
Raw Permalink Normal View History

from pydantic import BaseModel
from typing import Optional
from datetime import date, time
from decimal import Decimal
import uuid
class HealthMetricCreate(BaseModel):
measurement_date: date
measurement_time: Optional[time] = None
weight: Optional[Decimal] = None
height: Optional[Decimal] = None
body_fat_percentage: Optional[Decimal] = None
muscle_mass: Optional[Decimal] = None
waist: Optional[Decimal] = None
chest: Optional[Decimal] = None
hips: Optional[Decimal] = None
notes: Optional[str] = None
class HealthMetricResponse(BaseModel):
id: uuid.UUID
user_id: uuid.UUID
measurement_date: date
measurement_time: Optional[time]
weight: Optional[Decimal]
height: Optional[Decimal]
body_fat_percentage: Optional[Decimal]
muscle_mass: Optional[Decimal]
waist: Optional[Decimal]
chest: Optional[Decimal]
hips: Optional[Decimal]
notes: Optional[str]
class Config:
from_attributes = True
class HealthMetricUpdate(BaseModel):
measurement_date: Optional[date] = None
measurement_time: Optional[time] = None
weight: Optional[Decimal] = None
height: Optional[Decimal] = None
body_fat_percentage: Optional[Decimal] = None
muscle_mass: Optional[Decimal] = None
waist: Optional[Decimal] = None
chest: Optional[Decimal] = None
hips: Optional[Decimal] = None
notes: Optional[str] = None