32 lines
1.0 KiB
Python

from datetime import datetime
from sqlalchemy import Boolean, Column, DateTime, Enum, ForeignKey, Integer, Time
from sqlalchemy.orm import relationship
import enum
from app.db.base import Base
class WeekDay(str, enum.Enum):
MONDAY = "monday"
TUESDAY = "tuesday"
WEDNESDAY = "wednesday"
THURSDAY = "thursday"
FRIDAY = "friday"
SATURDAY = "saturday"
SUNDAY = "sunday"
class DoctorSchedule(Base):
__tablename__ = "doctor_schedules"
id = Column(Integer, primary_key=True, index=True)
doctor_id = Column(Integer, ForeignKey("doctors.id"), nullable=False)
day_of_week = Column(Enum(WeekDay), nullable=False)
start_time = Column(Time, nullable=False)
end_time = Column(Time, nullable=False)
is_available = Column(Boolean, default=True, nullable=False)
created_at = Column(DateTime, default=datetime.utcnow)
updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
# Relationships
doctor = relationship("Doctor", back_populates="schedules")