from model.class_management_model import ClassInfo from sqlalchemy.orm import Session #查询 def get_class_dao(c:dict,db:Session) : q = db.query(ClassInfo).filter(ClassInfo.is_delete == 0)#is_delete=0代表未删除 if c.get('class_id'): q = q.filter(ClassInfo.class_id == c.get('class_id')) if c.get('class_name'): q = q.filter(ClassInfo.class_name == c.get('class_name')) if c.get('class_teacher'): q = q.filter(ClassInfo.class_teacher == c.get('class_teacher')) if c.get('class_lecturer'): q = q.filter(ClassInfo.class_lecturer == c.get('class_lecturer')) if c.get('class_start_time'): q = q.filter(ClassInfo.class_start_time == c.get('class_start_time')) if c.get('class_end_time'): q = q.filter(ClassInfo.class_end_time == c.get('class_end_time')) c1 = q.all() if not c1: return [] return[ {'班级编号':i.class_id ,'班级名称':i.class_name ,'班主任':i.class_teacher ,'授课老师':i.class_lecturer ,'开课时间':i.class_start_time ,'结课时间':i.class_end_time } for i in c1 ] #新增 def add_class_dao(c:dict,db:Session): try: exist_class = db.query(ClassInfo)\ .filter(ClassInfo.class_name == c['class_name'] ,ClassInfo.is_delete == 0)\ .first() if exist_class: msg = '班级名称已存在' print(msg) return [False,msg] c1 = ClassInfo(**c) db.add(c1) except: db.rollback() return False else: db.commit() return True #修改 def update_class_dao(cid:int,update_data,db): try: rows = db.query(ClassInfo)\ .filter(ClassInfo.class_id == cid ,ClassInfo.is_delete==0)\ .update(update_data) except: db.rollback() return False else: db.commit() return rows #删除 def delete_class_dao(cid,db): try: rows = db.query(ClassInfo)\ .filter(ClassInfo.class_id == cid,ClassInfo.is_delete==0)\ .update({'is_delete':1}) except: db.rollback() rows = 0 else: db.commit() finally: return rows