更改文件导入路径和部分功能更新
This commit is contained in:
@@ -1,81 +1,96 @@
|
||||
from model.class_management_model import ClassInfo
|
||||
from class_management.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('id'):
|
||||
q = q.filter(ClassInfo.id == c.get('id'))
|
||||
if c.get('num'):
|
||||
q = q.filter(ClassInfo.num == c.get('num'))
|
||||
if c.get('name'):
|
||||
q = q.filter(ClassInfo.name == c.get('name'))
|
||||
if c.get('head_teacher_id'):
|
||||
q = q.filter(ClassInfo.head_teacher_id == c.get('head_teacher_id'))
|
||||
if c.get('coach_teacher_id'):
|
||||
q = q.filter(ClassInfo.coach_teacher_id == c.get('coach_teacher_id'))
|
||||
if c.get('tutor_teacher_id'):
|
||||
q = q.filter(ClassInfo.tutor_teacher_id == c.get('tutor_teacher_id'))
|
||||
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:
|
||||
res = q.all()
|
||||
if not res:
|
||||
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
|
||||
{'id':i.id
|
||||
,'num':i.num
|
||||
,'name':i.name
|
||||
,'head_teacher_id':i.head_teacher_id
|
||||
,'coach_teacher_id':i.coach_teacher_id
|
||||
,'tutor_teacher_id':i.tutor_teacher_id
|
||||
,'class_start_time':i.class_start_time
|
||||
,'class_end_time':i.class_end_time
|
||||
,"is_delete": i.is_delete
|
||||
,"create_time": i.create_time
|
||||
,"update_time": i.update_time
|
||||
} for i in res
|
||||
]
|
||||
|
||||
|
||||
#新增
|
||||
#新增班级
|
||||
def add_class_dao(c:dict,db:Session):
|
||||
try:
|
||||
exist_class = db.query(ClassInfo)\
|
||||
.filter(ClassInfo.class_name == c['class_name']
|
||||
.filter(ClassInfo.name == c['name']
|
||||
,ClassInfo.is_delete == 0)\
|
||||
.first()
|
||||
if exist_class:
|
||||
msg = '班级名称已存在'
|
||||
print(msg)
|
||||
return [False,msg]
|
||||
return (False,msg)
|
||||
c1 = ClassInfo(**c)
|
||||
db.add(c1)
|
||||
except:
|
||||
db.rollback()
|
||||
return False
|
||||
else:
|
||||
db.commit()
|
||||
return True
|
||||
db.refresh(c1)
|
||||
return (True,None)
|
||||
|
||||
except Exception as e:
|
||||
db.rollback()
|
||||
err_msg = f'数据库异常:{str(e)}'
|
||||
print(err_msg)
|
||||
return (False,err_msg)
|
||||
|
||||
|
||||
#修改
|
||||
def update_class_dao(cid:int,update_data,db):
|
||||
try:
|
||||
rows = db.query(ClassInfo)\
|
||||
.filter(ClassInfo.class_id == cid
|
||||
.filter(ClassInfo.id == cid
|
||||
,ClassInfo.is_delete==0)\
|
||||
.update(update_data)
|
||||
except:
|
||||
db.rollback()
|
||||
return False
|
||||
else:
|
||||
db.commit()
|
||||
return rows
|
||||
|
||||
except Exception as e:
|
||||
db.rollback()
|
||||
print(f"update_class_dao异常:{e}")
|
||||
return 0
|
||||
|
||||
#删除
|
||||
|
||||
|
||||
#删除(逻辑删除)
|
||||
def delete_class_dao(cid,db):
|
||||
try:
|
||||
rows = db.query(ClassInfo)\
|
||||
.filter(ClassInfo.class_id == cid,ClassInfo.is_delete==0)\
|
||||
.filter(ClassInfo.id == cid,ClassInfo.is_delete==0)\
|
||||
.update({'is_delete':1})
|
||||
except:
|
||||
db.rollback()
|
||||
rows = 0
|
||||
else:
|
||||
db.commit()
|
||||
finally:
|
||||
return rows
|
||||
except Exception as e:
|
||||
db.rollback()
|
||||
print(f"delete_class_dao异常:{e}")
|
||||
rows = 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user