health-apps-backend/schemas/UpdateSchemas.py

78 lines
2.2 KiB
Python

from .BaseSchemas import *
from enums.enums import ClinicStatus, Integration
# Update schemas (all fields optional for partial updates)
class ClinicUpdate(BaseModel):
name: Optional[str] = None
address: Optional[str] = None
phone: Optional[str] = None
integration: Optional[Integration] = None
pms_id: Optional[str] = None
practice_name: Optional[str] = None
logo: Optional[str] = None
country: Optional[str] = None
postal_code: Optional[str] = None
city: Optional[str] = None
state: Optional[str] = None
abn_doc: Optional[str] = None
abn_number: Optional[str] = None
contract_doc: Optional[str] = None
clinic_phone: Optional[str] = None
is_clinic_phone_enabled: Optional[bool] = True
other_info: Optional[str] = None
greeting_msg: Optional[str] = None
voice_model: Optional[str] = None
voice_model_provider: Optional[str] = None
voice_model_gender: Optional[str] = None
scenarios: Optional[str] = None
general_info: Optional[str] = None
class ClinicStatusUpdate(BaseModel):
clinic_id: int
status: ClinicStatus
rejection_reason: Optional[str] = None
class SignupPricingMasterUpdate(SignupPricingMasterBase):
pass
class DoctorUpdate(BaseModel):
name: Optional[str] = None
age: Optional[int] = None
email: Optional[EmailStr] = None
phone: Optional[str] = None
address: Optional[str] = None
clinic_id: Optional[int] = None
class PatientUpdate(BaseModel):
name: Optional[str] = None
age: Optional[int] = None
email: Optional[EmailStr] = None
phone: Optional[str] = None
address: Optional[str] = None
class AppointmentUpdate(BaseModel):
doctor_id: Optional[int] = None
patient_id: Optional[int] = None
appointment_time: Optional[datetime] = None
status: Optional[AppointmentStatus] = None
class CalendarUpdate(BaseModel):
doc_id: Optional[int] = None
rrule: Optional[str] = None
class UserUpdate(BaseModel):
username: Optional[str] = None
clinicRole: Optional[ClinicUserRoles] = None
userType: Optional[UserType] = None
profile_pic: Optional[str] = None
password: Optional[str] = None
class ClinicDoctorUpdate(ClinicDoctorBase):
pass