from sqlalchemy import Column, Integer, String, Boolean from sqlalchemy.orm import relationship from database import Base from enums.enums import Integration, ClinicStatus from sqlalchemy import Enum from .CustomBase import CustomBase class Clinics(Base, CustomBase): __tablename__ = "clinics" id = Column(Integer, primary_key=True, index=True) name = Column(String) address = Column(String, nullable=True) phone = Column(String, unique=True, index=True) # clinic phone emergency_phone = Column(String, unique=True, nullable=True) email = Column(String, unique=True, index=True, nullable=True) fax = Column(String, nullable=True) integration = Column(Enum(Integration)) pms_id = Column(String, nullable=True) practice_name = Column(String, nullable=True) logo = Column(String, nullable=True) country = Column(String, nullable=True) postal_code = Column(String, nullable=True) city = Column(String, nullable=True) state = Column(String, nullable=True) abn_doc = Column(String, nullable=True) abn_number = Column(String, nullable=True) contract_doc = Column(String, nullable=True) clinic_phone = Column(String, nullable=True) # AI Receptionist Phone is_clinic_phone_enabled = Column(Boolean, default=False) other_info = Column(String, nullable=True) greeting_msg = Column(String, nullable=True) voice_model = Column(String, nullable=True) voice_model_provider = Column(String, nullable=True) voice_model_gender = Column(String, nullable=True) scenarios = Column(String, nullable=True) general_info = Column(String, nullable=True) status = Column(Enum(ClinicStatus)) domain = Column(String, nullable=True) # unique for each clinic doctors = relationship("Doctors", back_populates="clinic") clinicDoctors = relationship("ClinicDoctors", back_populates="clinic")