54 lines
1.5 KiB
Python
54 lines
1.5 KiB
Python
# dao/users_dao.py
|
|
# 本文件封装对 Teacher表的所有数据库操作(增、删、改、查)
|
|
# dao/teacher_dao.py
|
|
# 本文件封装对 Teacher表的所有数据库操作(增、删、改、查)
|
|
# dao/teacher_dao.py
|
|
# 本文件封装对 Teacher表的所有数据库操作(增、删、改、查)
|
|
# dao/teacher_dao.py
|
|
# 本文件封装对 Teacher表的所有数据库操作(增、删、改、查)
|
|
# dao/teacher_dao.py
|
|
# 本文件封装对 Teacher表的所有数据库操作(增、删、改、查)
|
|
from sqlalchemy.orm import Session
|
|
from model.teacher import Teacher
|
|
|
|
#新增
|
|
def add_teacher(db:Session, teacher_no:str, name:str, phone:str):
|
|
new_teacher=Teacher(
|
|
teacher_no=teacher_no,
|
|
name=name,
|
|
phone=phone
|
|
)
|
|
db.add(new_teacher)
|
|
db.commit()
|
|
db.refresh(new_teacher)
|
|
return new_teacher
|
|
|
|
#查 根据id
|
|
def get_teacher_by_id(db:Session,id:int):
|
|
return db.query(Teacher).filter(Teacher.id == id, Teacher.is_deleted == 0).first()
|
|
|
|
#逻辑删除
|
|
def delete_teacher_logic(db:Session,id:int):
|
|
teacher=get_teacher_by_id(db,id)
|
|
if not teacher:
|
|
return None
|
|
teacher.is_deleted=1
|
|
db.commit()
|
|
return teacher
|
|
|
|
#修改
|
|
def update_teacher_logic(db:Session, id:int, new_name:str=None, new_phone:str=None):
|
|
teacher = get_teacher_by_id(db, id)
|
|
if not teacher:
|
|
return None
|
|
if new_name is not None:
|
|
teacher.name = new_name
|
|
if new_phone is not None:
|
|
teacher.phone = new_phone
|
|
db.commit()
|
|
db.refresh(teacher)
|
|
return teacher
|
|
|
|
|
|
|