from sqlalchemy import Column, Integer, String from database import Base from sqlalchemy import Enum from enums.enums import ClinicUserRoles, UserType from models.CustomBase import CustomBase from sqlalchemy.orm import relationship class Users(Base, CustomBase): __tablename__ = "users" id = Column(Integer, primary_key=True, index=True) username = Column(String, index=True) email = Column(String, unique=True, index=True) password = Column(String) clinicRole = Column(Enum(ClinicUserRoles), nullable=True) userType = Column(Enum(UserType), nullable=True) profile_pic = Column(String, nullable=True) mobile = Column(String) # Notification relationships sent_notifications = relationship("Notifications", foreign_keys="Notifications.sender_id", back_populates="sender") received_notifications = relationship("Notifications", foreign_keys="Notifications.receiver_id", back_populates="receiver") # FCM relationships fcm = relationship("Fcm", back_populates="user") # Clinics created by this user created_clinics = relationship("Clinics", back_populates="creator") clinic_file_verifications = relationship("ClinicFileVerifications", back_populates="last_changed_by_user")