44 lines
973 B
Python

from datetime import date, datetime
from typing import Optional
from pydantic import BaseModel
# Shared properties
class PatientBase(BaseModel):
date_of_birth: Optional[date] = None
blood_type: Optional[str] = None
allergies: Optional[str] = None
medical_history: Optional[str] = None
emergency_contact_name: Optional[str] = None
emergency_contact_phone: Optional[str] = None
# Properties to receive via API on creation
class PatientCreate(PatientBase):
user_id: int
# Properties to receive via API on update
class PatientUpdate(PatientBase):
pass
class PatientInDBBase(PatientBase):
id: Optional[int] = None
user_id: int
created_at: Optional[datetime] = None
updated_at: Optional[datetime] = None
class Config:
from_attributes = True
# Additional properties to return via API
class Patient(PatientInDBBase):
pass
# Additional properties stored in DB
class PatientInDB(PatientInDBBase):
pass