Files
SST/PythonProject/api/teacher_api.py
T
2026-09-21 20:00:35 +08:00

41 lines
1.8 KiB
Python

from fastapi import APIRouter,HTTPException,Depends
from schema.teacher_schema import Teacher_ResponseModel, Teacher_RequestModel
from dao.teacher_dao import add_teacher
from util.database import get_db
teacher_api=APIRouter()
@teacher_api.post("/teachers",response_model=Teacher_ResponseModel,tags=['教师基本信息管理模块'],summary='新增教师接口')
def get_teacher(x1:Teacher_RequestModel,session=Depends(get_db)):
y=add_teacher(x1.model_dump(),session)
if not y:
raise HTTPException(status_code=500,detail='添加异常!')
return x1
@teacher_api.get("/teachers",tags=['教师基本信息管理模块'],summary='查询教师接口')
def get_teacher(teacid:int, session=Depends(get_db)):
# 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='数据库查询异常!')
@teacher_api.put("/teachers",response_model=Teacher_ResponseModel,tags=['教师基本信息管理模块'],summary='更新教师接口')
def update_teacher(id:int,teacher:Teacher_RequestModel,session=Depends(get_db)):
d=teacher.model_dump()
r=update_teacher(id=id,req=d,session=session)
if not r:
raise HTTPException(status_code=500, detail='更新异常!')
return {'code': 200, 'totals': r, 'detail': '更新成功'}
@teacher_api.delete("/teachers",response_model=Teacher_ResponseModel,tags=['教师基本信息管理模块'],summary='删除教师接口')
def delete_teacher(id:int,session=Depends(get_db)):
r=delete_teacher(id=id,session=session)
if not r:
raise HTTPException(status_code=500,detail='删除异常!')
return {'code': 200, 'totals': r}