38 lines
733 B
Python
38 lines
733 B
Python
from pydantic import BaseModel
|
|
from pydantic.types import UUID4, Json
|
|
from typing import List, Optional, Any
|
|
from datetime import date, datetime
|
|
|
|
class Person(BaseModel):
|
|
full_name: str
|
|
birth_date: date
|
|
class MedicalCardResponse(BaseModel):
|
|
id: UUID4
|
|
number: Optional[str]
|
|
person: Person
|
|
created_at: Optional[datetime]
|
|
|
|
|
|
|
|
class MedicalCardCreate(BaseModel):
|
|
number: str
|
|
person_id: UUID4
|
|
|
|
class MedicalCardBase(BaseModel):
|
|
id: UUID4
|
|
|
|
class Config:
|
|
orm_mode = True
|
|
|
|
class MedicalCards(BaseModel):
|
|
__root__: List[MedicalCardBase]
|
|
class Config:
|
|
orm_mode = True
|
|
|
|
class MedicalCardDetail(BaseModel):
|
|
id: UUID4
|
|
number: Optional[str]
|
|
|
|
created_at: Optional[datetime]
|
|
class Config:
|
|
orm_mode = True |