from app.extensions import db


class Jadwal(db.Model):
    __tablename__ = 'jadwal'

    id = db.Column(db.Integer, primary_key=True)
    school_id = db.Column(db.Integer, db.ForeignKey('schools.id'), nullable=False)
    kelas_id = db.Column(db.Integer, db.ForeignKey('kelas.id'), nullable=False)
    mata_pelajaran_id = db.Column(db.Integer, db.ForeignKey('mata_pelajaran.id'), nullable=False)
    guru_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False)
    day = db.Column(db.Enum('senin', 'selasa', 'rabu', 'kamis', 'jumat', name='day_enum'), nullable=False)
    start_time = db.Column(db.Time, nullable=False)
    end_time = db.Column(db.Time, nullable=False)

    guru = db.relationship('User', backref='jadwal_mengajar')
    mata_pelajaran = db.relationship('MataPelajaran', backref='jadwal')

    def __repr__(self):
        return f'<Jadwal {self.day} {self.start_time}-{self.end_time}>'
