from datetime import datetime from sqlalchemy import Column, Integer, String, ForeignKey, Time from sqlalchemy.orm import relationship from extensions import db class Shift(db.Model): __tablename__ = 'shift' id = db.Column(db.Integer, primary_key=True) service_instance_id = db.Column(db.Integer, db.ForeignKey('service_instance.id'), nullable=False) # Relaciona com ServiceInstance name = db.Column(db.String(50), nullable=False) # Nome do turno (Manhã, Tarde, etc.) day = db.Column(db.String(20), nullable=False) # Ex: Segunda, Terça start_time = db.Column(db.Time, nullable=False) end_time = db.Column(db.Time, nullable=False) interval_start = db.Column(db.Time, nullable=True) interval_end = db.Column(db.Time, nullable=True) type_interval = db.Column(db.String(50), nullable=False) # Relacionamento com o modelo TimeSchedule time_schedules = db.relationship('TimeSchedule', backref='shifts', lazy=True) # Relacionamento com o modelo Record, utilizando a chave estrangeira corretamente records = db.relationship("Record", back_populates="shifts", lazy=True) def __repr__(self): return f''