25 lines
867 B
Python
25 lines
867 B
Python
from fastapi import APIRouter,Depends,HTTPException,Path,Form
|
|
from util.database import get_db
|
|
from model.all_model import Student_Model
|
|
from dao.grade_dao import *
|
|
from schema.grade_schema import *
|
|
|
|
gradeAPI = APIRouter(tags=['学生考核成绩'])
|
|
|
|
@gradeAPI.get("/grade/{stu_id}",summary="根据学生id查询成绩")
|
|
def get_grade(stu_id: int,db=Depends(get_db)):
|
|
try:
|
|
res=get_grade_dao(stu_id,db)
|
|
return {'code': 200,'msg':'查询成功','data':res}
|
|
except Exception as e:
|
|
raise HTTPException(status_code=500,detail=f'数据库查询异常:{str(e)}')
|
|
|
|
@gradeAPI.post('/{stu_id}',summary='添加学生成绩')
|
|
def post_grade(o:GradeRequest=Form(),db=Depends(get_db)):
|
|
d=o.model_dump()
|
|
r=add_grade_dao(g=d,db=db)
|
|
if not r:
|
|
raise HTTPException(status_code=400, detail='学生不存在')
|
|
return GradeResponse
|
|
|