from sqlalchemy.orm import Session import models, schemas def get_shift(db: Session, shift_id: int): return ( db.query(models.SingleShift).filter(models.SingleShift.id == shift_id).first() ) def get_shift_by_name(db: Session, name: str): return db.query(models.SingleShift).filter(models.SingleShift.name == name).first() def get_shifts(db: Session, skip: int = 0, limit: int = 100): return db.query(models.SingleShift).offset(skip).limit(limit).all() def create_shift(db: Session, shift: schemas.SingleShiftCreate): shift = models.SingleShift(**shift.dict()) db.add(shift) db.commit() db.refresh(shift) return shift def create_worker(db: Session, worker: schemas.WorkerCreate): worker = models.Worker(**worker.dict()) db.add(worker) db.commit() db.refresh(worker) return worker def get_worker(db: Session, worker_id: int): return ( db.query(models.Worker).filter(models.Worker.id == worker_id).first() ) def get_worker_by_name(db: Session, name: str): return db.query(models.Worker).filter(models.Worker.name == name).first() def get_workers(db: Session, skip: int = 0, limit: int = 100): return db.query(models.Worker).offset(skip).limit(limit).all() #def get_shift_constraints(db: Session, skip: int = 0, limit: int = 100): # return db.query(models.ShiftConstraint).offset(skip).limit(limit).all() # # #def create_shift_constraints( # db: Session, item: schemas.ShiftConstraintCreate, constraint_id: int #): # db_item = models.ShiftConstraint(**item.dict(), constraint_id=constraint_id) # db.add(db_item) # db.commit() # db.refresh(db_item) # return db_item