Files
SST/PythonProject/api/teacher_api.py
T

44 lines
1.9 KiB
Python
Raw Normal View History

2026-09-21 20:00:35 +08:00
from fastapi import APIRouter,HTTPException,Depends
2026-09-21 15:19:18 +08:00
from schema.teacher_schema import Teacher_ResponseModel, Teacher_RequestModel
2026-09-21 20:00:35 +08:00
from dao.teacher_dao import add_teacher
from util.database import get_db
2026-09-21 20:40:35 +08:00
from dao.teacher_dao import update_teacher
from dao.teacher_dao import delete_teacher
from dao.teacher_dao import get_teacher
2026-09-21 15:19:18 +08:00
teacher_api=APIRouter()
2026-09-21 18:30:55 +08:00
@teacher_api.post("/teachers",response_model=Teacher_ResponseModel,tags=['教师基本信息管理模块'],summary='新增教师接口')
2026-09-21 20:40:35 +08:00
def add_teacher1(x1:Teacher_RequestModel,session=Depends(get_db)):
2026-09-21 20:00:35 +08:00
y=add_teacher(x1.model_dump(),session)
if not y:
2026-09-21 15:19:18 +08:00
raise HTTPException(status_code=500,detail='添加异常!')
2026-09-21 20:00:35 +08:00
return x1
2026-09-21 15:19:18 +08:00
2026-09-21 18:30:55 +08:00
@teacher_api.get("/teachers",tags=['教师基本信息管理模块'],summary='查询教师接口')
2026-09-21 20:40:35 +08:00
def get_teacher1(teacid:int, session=Depends(get_db)):
2026-09-21 18:30:55 +08:00
# r = get_teacher(id=id,session=session)
# if not r:
# raise HTTPException(status_code=500, detail='查询异常!')
try:
l=get_teacher(teacid,session)
return {'code': 200,'msg':'查询成功','data':l}
except:
raise HTTPException(status_code=500,detail='数据库查询异常!')
2026-09-21 15:19:18 +08:00
2026-09-21 20:40:35 +08:00
@teacher_api.put("/teachers/{t_id}",tags=['教师基本信息管理模块'],summary='更新教师接口')
def update_teacher1(t_id:int,teacher:Teacher_RequestModel,session=Depends(get_db)):
d=teacher.model_dump(exclude_unset=True)
r=update_teacher(id=t_id,req=d,session=session)
2026-09-21 15:19:18 +08:00
if not r:
raise HTTPException(status_code=500, detail='更新异常!')
2026-09-21 20:40:35 +08:00
return {'code':200,'detail':'cg'}
2026-09-21 15:19:18 +08:00
2026-09-21 21:02:18 +08:00
@teacher_api.delete("/teachers/{t_id}",tags=['教师基本信息管理模块'],summary='删除教师接口')
def delete_teacher1(t_id:int,session=Depends(get_db)):
r=delete_teacher(id=t_id,session=session)
2026-09-21 15:19:18 +08:00
if not r:
raise HTTPException(status_code=500,detail='删除异常!')
2026-09-21 21:02:18 +08:00
return {'code': 200, 'detail': 'cg'}