1
This commit is contained in:
@@ -6,7 +6,7 @@ from util.database import get_db
|
|||||||
|
|
||||||
StudentAPI = APIRouter()
|
StudentAPI = APIRouter()
|
||||||
|
|
||||||
@StudentAPI.get('/students',response_model=list[StudentPageResponse],tags=['学⽣基本信息管理模块'],summary='学生信息查询接口',description='查询学生信息')
|
@StudentAPI.get('/students',response_model=StudentPageResponse,tags=['学⽣基本信息管理模块'],summary='学生信息查询接口',description='查询学生信息')
|
||||||
def get_students(stu_id:int|None=None
|
def get_students(stu_id:int|None=None
|
||||||
,stu_name:str|None=None
|
,stu_name:str|None=None
|
||||||
,class_id:int|None=None
|
,class_id:int|None=None
|
||||||
@@ -22,12 +22,10 @@ def get_students(stu_id:int|None=None
|
|||||||
|
|
||||||
if not r:
|
if not r:
|
||||||
raise HTTPException(status_code=404,detail='学生不存在')
|
raise HTTPException(status_code=404,detail='学生不存在')
|
||||||
return {'code': 200
|
return StudentPageResponse(page=page,
|
||||||
, 'detail': 'ok'
|
page_size=page_size,
|
||||||
, 'page': page
|
total=total,
|
||||||
, 'page_size': page_size
|
data=r)
|
||||||
, 'total': total
|
|
||||||
, 'data': r}
|
|
||||||
|
|
||||||
@StudentAPI.put('/{stu_id}',tags=['学⽣基本信息管理模块'],summary='学生信息更新接口',description='更新学生信息')
|
@StudentAPI.put('/{stu_id}',tags=['学⽣基本信息管理模块'],summary='学生信息更新接口',description='更新学生信息')
|
||||||
def update_students(s:StudentRequest
|
def update_students(s:StudentRequest
|
||||||
|
|||||||
@@ -2,22 +2,23 @@ from fastapi import Depends
|
|||||||
from util.database import get_db
|
from util.database import get_db
|
||||||
from model.all_model import Student_Model
|
from model.all_model import Student_Model
|
||||||
from typing import List, Optional, Dict, Any
|
from typing import List, Optional, Dict, Any
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
def add_student_dao(o,db):
|
def add_student_dao(o,db):
|
||||||
try:
|
try:
|
||||||
o1 = Student_Model( **o)
|
o1 = Student_Model( **o)
|
||||||
db.add(o1)
|
db.add(o1)
|
||||||
|
db.commit()
|
||||||
|
stu_id=o1.stu_id
|
||||||
|
return db.query(Student_Model).filter(Student_Model.stu_id == stu_id).first()
|
||||||
except:
|
except:
|
||||||
db.rollback()
|
db.rollback()
|
||||||
return False
|
return None
|
||||||
else:
|
|
||||||
db.commit()
|
|
||||||
return True
|
|
||||||
|
|
||||||
def delete_student_dao(stu_id,db):
|
def delete_student_dao(stu_id,db):
|
||||||
try:
|
try:
|
||||||
rows = db.query(Student_Model).filter(Student_Model.stu_id == stu_id,Student_Model.delete_status == 0)\
|
rows = db.query(Student_Model).filter(Student_Model.stu_id == stu_id,Student_Model.delete_status == 0)\
|
||||||
.update({'delete_status':1})
|
.update({'delete_status':1,'delete_time': datetime.now()})
|
||||||
db.commit()
|
db.commit()
|
||||||
except:
|
except:
|
||||||
db.rollback()
|
db.rollback()
|
||||||
@@ -52,7 +53,7 @@ def get_student_dao(stu_id:Optional[int]
|
|||||||
q= q.filter(Student_Model.class_id == class_id,Student_Model.delete_status == 0)
|
q= q.filter(Student_Model.class_id == class_id,Student_Model.delete_status == 0)
|
||||||
total = q.count()
|
total = q.count()
|
||||||
r = q.offset((page - 1) * page_size).limit(page_size).all()
|
r = q.offset((page - 1) * page_size).limit(page_size).all()
|
||||||
return total,r
|
return r,total
|
||||||
except:
|
except:
|
||||||
db.rollback()
|
db.rollback()
|
||||||
return [],0
|
return [],0
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from pydantic import BaseModel, field_serializer, field_validator,model_validato
|
|||||||
|
|
||||||
class StudentRequest(BaseModel):
|
class StudentRequest(BaseModel):
|
||||||
class_id:int |None = None
|
class_id:int |None = None
|
||||||
stu_name:str |None = None
|
stu_name:str
|
||||||
age:int |None = None
|
age:int |None = None
|
||||||
gender:str |None = None
|
gender:str |None = None
|
||||||
native_place:str |None = None
|
native_place:str |None = None
|
||||||
@@ -78,5 +78,5 @@ class StudentPageResponse(BaseModel):
|
|||||||
detail: str = "ok"
|
detail: str = "ok"
|
||||||
page: int
|
page: int
|
||||||
page_size: int
|
page_size: int
|
||||||
total: int
|
totals: int
|
||||||
data: List[StugetResponse]
|
data: List[StugetResponse]
|
||||||
Reference in New Issue
Block a user