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

42 lines
1.6 KiB
Python

from fastapi import APIRouter,HTTPException
from fastapi.params import Depends
from model.all_model import *
from schema.teacher_schema import Teacher_ResponseModel, Teacher_RequestModel
from tmpl.work.util.database import get_db
from dao.teacher_dao import *
teacher_api=APIRouter()
@teacher_api.post("",response_model=Teacher_ResponseModel)
def add_teacher1(teacher:Teacher_RequestModel,session=Depends(get_db())):
d=teacher.model_dump()
r=add_teacher(req=d,session=session)
if not r:
raise HTTPException(status_code=500,detail='添加异常!')
return Teacher_ResponseModel(totals=1,data=d)
@teacher_api.get("",response_model=Teacher_ResponseModel)
def get_teacher(id:int,session=Depends(get_db)):
r = session.query(Teacher_Model).filter( Teacher_Model.teac_id == id ).all()
if r:
return [{'teac_name':i.teac_name,'teac_gender':i.teac_gender,'teac_age':i.teac_age,'teac_position':i.teac_position} for i in r]
raise HTTPException(status_code=404,detail='老师不存在!')
@teacher_api.put("",response_model=Teacher_ResponseModel)
def update_teacher1(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("",response_model=Teacher_ResponseModel)
def delete_teacher1(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}