nb
This commit is contained in:
@@ -15,7 +15,7 @@ def get_grade(stu_id: int,db=Depends(get_db)):
|
||||
raise HTTPException(status_code=500,detail=f'数据库查询异常:{str(e)}')
|
||||
|
||||
@gradeAPI.post('/grade',response_model=GradeResponse,summary='添加学生成绩')
|
||||
def post_grade(o:GradeRequest=Form(),db=Depends(get_db)):
|
||||
def post_grade(o:GradeRequest,db=Depends(get_db)):
|
||||
d=o.model_dump()
|
||||
r=add_grade_dao(g=d,db=db)
|
||||
if not r:
|
||||
@@ -25,7 +25,7 @@ def post_grade(o:GradeRequest=Form(),db=Depends(get_db)):
|
||||
@gradeAPI.put('/{score_id}',summary='成绩修改')
|
||||
def put_grade(
|
||||
score_id: int
|
||||
,o:GradeUpdate=Form()
|
||||
,o:GradeUpdate
|
||||
,db=Depends(get_db)
|
||||
):
|
||||
old_obj = get_score_by_id_dao(score_id=score_id, db=db)
|
||||
|
||||
@@ -7,13 +7,15 @@ from model.all_model import *
|
||||
# 根据id查询单条有效成绩
|
||||
def get_score_by_id_dao(score_id:int, db):
|
||||
return db.query(WlScore).filter(
|
||||
WlScore.id == score_id
|
||||
,WlScore.delete_status==1
|
||||
WlScore.score_id == score_id
|
||||
,WlScore.delete_status==0
|
||||
).first()
|
||||
|
||||
# 根据stu_id+exam_order查重(新增、修改时校验重复)
|
||||
def get_score_by_stu_exam_order_dao(stu_id:str,exam_order:int,db):
|
||||
return db.query(WlScore).filter(WlScore.stu_id==stu_id,WlScore.exam_order==exam_order,WlScore.delete_status==0).first()
|
||||
return db.query(WlScore).filter(WlScore.stu_id==stu_id
|
||||
,WlScore.exam_order==exam_order
|
||||
,WlScore.delete_status==0).first()
|
||||
|
||||
def get_grade_dao( stu_id:int , db):
|
||||
|
||||
@@ -52,7 +54,7 @@ def delete_grade_dao(stu_id:int,db):
|
||||
rows = db.query(WlScore).filter(
|
||||
WlScore.stu_id == stu_id,
|
||||
WlScore.delete_status == 0
|
||||
).update({'delete_status':1})
|
||||
).update({'delete_status':1,'delete_time':datetime.now()})
|
||||
except:
|
||||
db.rollback()
|
||||
return False
|
||||
|
||||
@@ -1,21 +1,20 @@
|
||||
|
||||
from model.all_model import *
|
||||
from pydantic import BaseModel, Field, field_validator
|
||||
from fastapi import HTTPException,Form
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class GradeRequest(BaseModel):
|
||||
stu_id:int = Form(description="学生编号")
|
||||
exam_order:int = Form(description='考核序次')
|
||||
score:float = Form(description='成绩')
|
||||
stu_id:int = Field(description="学生编号")
|
||||
exam_order:int = Field(description='考核序次')
|
||||
score:float = Field(description='成绩')
|
||||
|
||||
class GradeResponse(BaseModel):
|
||||
code: int = 200
|
||||
detail: str = 'OK'
|
||||
score_id: float
|
||||
stu_id:int
|
||||
exam_order:int
|
||||
score:float
|
||||
|
||||
class GradeUpdate(BaseModel):
|
||||
exam_order: int | None = Form( description="考核序次")
|
||||
score: float | None = Form( description="成绩")
|
||||
exam_order: int | None = Field( None,description="考核序次")
|
||||
score: float | None = Field( None,description="成绩")
|
||||
|
||||
Reference in New Issue
Block a user