第一次提交
This commit is contained in:
@@ -0,0 +1,141 @@
|
||||
from datetime import date
|
||||
|
||||
from sqlalchemy.orm import sessionmaker, declarative_base, Session, Query, selectinload
|
||||
|
||||
from model.teachers import Teacher
|
||||
|
||||
#添加方法
|
||||
def add_teachers(db:Session ,t_name:str, t_gender:str, t_phone:str, t_subject:str,t_created:date):
|
||||
t1=Teacher(
|
||||
t_name=t_name,
|
||||
t_gender=t_gender,
|
||||
t_phone=t_phone,
|
||||
t_subject=t_subject,
|
||||
t_created=t_created,
|
||||
t_delete=False
|
||||
)
|
||||
try:
|
||||
db.add(t1)
|
||||
db.commit()
|
||||
db.refresh(t1)
|
||||
return {"msg":"添加成功"}
|
||||
except Exception as e:
|
||||
print(e)
|
||||
return {"msg":"删除成功"}
|
||||
|
||||
|
||||
#删除方法
|
||||
def del_teachers(db:Session,t_id:int,t_name:str):
|
||||
teacher=db.query(Teacher).filter(Teacher.t_id==t_id,
|
||||
Teacher.t_name==t_name,
|
||||
Teacher.t_delete==False
|
||||
).first()
|
||||
if not teacher:
|
||||
return {"msg":"没找到老师信息"}
|
||||
#逻辑删除
|
||||
try:
|
||||
teacher.t_delete=True
|
||||
db.commit()
|
||||
return {"msg":"删除成功"}
|
||||
except Exception as e:
|
||||
print("删除异常",e)
|
||||
return {"msg":"删除失败"}
|
||||
|
||||
#修改老师
|
||||
def update_teachers(db:Session,t_id:int,new_name,new_gender,new_phone,new_subject,new_created):
|
||||
teacher=db.query(Teacher).filter(Teacher.t_id==t_id,Teacher.t_delete==False).first()
|
||||
if not teacher:
|
||||
return {"msg":"没找到老师信息"}
|
||||
teacher.t_name=new_name
|
||||
teacher.t_gender=new_gender
|
||||
teacher.t_phone=new_phone
|
||||
teacher.t_subject=new_subject
|
||||
teacher.t_created=new_created
|
||||
try:
|
||||
db.commit()
|
||||
db.refresh(teacher)
|
||||
return {"msg":"修改成功"}
|
||||
except Exception as e:
|
||||
print(e)
|
||||
return {"msg": "修改失败"}
|
||||
|
||||
# 查询所有老师信息
|
||||
# 分页
|
||||
def search_teachers(db:Session,page:int,size:int):
|
||||
start = (page - 1) * size
|
||||
teachers=db.query(Teacher.t_id,
|
||||
Teacher.t_name,
|
||||
Teacher.t_gender,
|
||||
Teacher.t_phone,
|
||||
Teacher.t_subject,
|
||||
Teacher.t_created).filter(Teacher.t_delete==False)
|
||||
teach=teachers.offset(start).limit(size).all() #跳过多少行,查询当前页数据
|
||||
total=teachers.count()
|
||||
l1=[]
|
||||
#将查出来的值存入列表
|
||||
for i in teach:
|
||||
bb={
|
||||
"t_id":i[0],
|
||||
"t_name":i[1],
|
||||
"t_gender":i[2],
|
||||
"t_phone":i[3],
|
||||
"t_subject":i[4],
|
||||
"t_created":i[5].strftime("%Y-%m-%d") # 将字符串转时间
|
||||
}
|
||||
l1.append(bb)
|
||||
return {
|
||||
"total":total,
|
||||
"page":page,
|
||||
"size":size,
|
||||
"list":l1
|
||||
}
|
||||
|
||||
|
||||
|
||||
#查询单个老师信息
|
||||
#根据id查
|
||||
def search_teachers_by_id(db:Session,t_id:int):
|
||||
teachers=db.query(Teacher).filter(Teacher.t_id==t_id,Teacher.t_delete==False).first()
|
||||
if not teachers:
|
||||
return None
|
||||
l2={
|
||||
"t_id":teachers.t_id,
|
||||
"t_name":teachers.t_name,
|
||||
"t_gender":teachers.t_gender,
|
||||
"t_phone":teachers.t_phone,
|
||||
"t_subject":teachers.t_subject,
|
||||
"t_created":teachers.t_created.strftime("%Y-%m-%d")
|
||||
}
|
||||
return l2
|
||||
|
||||
#查看带班信息
|
||||
def get_teacher_classes(db:Session,t_id:int):
|
||||
teacher=(db.query(Teacher).filter(Teacher.t_id==t_id,Teacher.t_delete==False)
|
||||
.options(selectinload(Teacher.classes)).first())
|
||||
if not teacher:
|
||||
return None
|
||||
|
||||
l3=[]
|
||||
for i in teacher.classes:
|
||||
l3.append({
|
||||
"class_id":i.class_id,
|
||||
"class_name":i.class_name,
|
||||
"create_time":i.create_time.strftime("%Y-%m-%d"),
|
||||
})
|
||||
|
||||
res={
|
||||
"tid":teacher.t_id,
|
||||
"t_id": teacher.t_id,
|
||||
"t_name": teacher.t_name,
|
||||
"t_gender": teacher.t_gender,
|
||||
"t_phone": teacher.t_phone,
|
||||
"t_subject": teacher.t_subject,
|
||||
"t_created": teacher.t_created.strftime("%Y-%m-%d"),
|
||||
"class_list": l3
|
||||
}
|
||||
return res
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user