班级api,schema,dao

This commit is contained in:
2026-09-21 23:16:01 +08:00
parent 2287228252
commit 8b364805d1
3 changed files with 8 additions and 11 deletions
+5 -6
View File
@@ -22,13 +22,12 @@ def post_classes(classes:ClassCreate,db=Depends(get_db)): # 定义更
@classes_router.put('/{id}',response_model=ClassResponse,summary='更新班级信息')
def put_classes(id:int,classes:ClassUpdate,db=Depends(get_db)):
def put_classes(classes:ClassUpdate,id:int,db=Depends(get_db)):
updates = classes.model_dump( exclude_unset=True )
r = update_classes_dao( id , db, updates=updates )
r = update_classes_dao( id, db, updates )
if not r :
raise HTTPException(status_code=500, detail='更新失败,该班级已不存在或服务器繁忙,请稍后更新!')
else :
return ClassResponse(detail='更新成功', total=1)
return ClassResponse(detail='更新成功', total=1 ,data = updates )
@classes_router.get('',summary='查询班级信息')
@@ -48,8 +47,8 @@ def get_classes( id:int|None = None
@classes_router.delete('/{id}',response_model=ClassResponse,summary='删除班级信息')
def delete_classes(id:int,db=Depends(get_db)):
r = update_classes_dao( id , db )
if r :
r = delete_classes_dao( id , db )
if not r :
return ClassResponse( total=1,data='已成功删除班级信息' )
else :
raise HTTPException(status_code=500, detail='删除失败,该班级信息已不存在或服务器繁忙,请稍后更新!')
+2 -5
View File
@@ -17,10 +17,7 @@ def post_classes_dao( c , db ): # 定义函数,设置两个
def update_classes_dao( class_id , db , updates ):
try :
r = db.query( Classes ).filter( Classes.id == class_id , Classes.is_deleted == 0 ).first()
for k,v in updates.items() :
setattr( r, k, v)
r = db.query(Classes).filter(Classes.id ==class_id , Classes.is_deleted == 0 ).update(updates)
except :
db.rollback()
return False
@@ -55,7 +52,7 @@ def get_classes_dao( class_id, class_no , class_name , page , page_size , db ):
def delete_classes_dao( class_id , db ):
try :
db.query( Classes ).filter( Classes.id == class_id , Classes.is_deleted == 0 ) .update( Classes.is_deleted == 1 )
db.query( Classes ).filter( Classes.id == class_id , Classes.is_deleted == 0 ).update( Classes.is_deleted == 1 )
except :
db.rollback()
return False
+1
View File
@@ -3,6 +3,7 @@ from pydantic import BaseModel # 导入pydantic模块下的BaseModel
from datetime import datetime,date # 导入datetime模块下的datetime,date类
# ————定义"创建班级"的"请求体"模型————
class ClassCreate( BaseModel ): # "创建"班级信息的请求体模型
class_no: str # 班级编号",不可为空