更新注释
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
# 顾问模块:独立接口,沿用原学生接口的依赖注入与返回方式。
|
||||
|
||||
# 顾问模块:独立接口,沿用原学生接口的依赖注入与返回方式。
|
||||
# FastAPI路由层,定义顾问管理相关接口,接收前端请求,参数校验,调用DAO层完成数据库操作
|
||||
from fastapi import APIRouter, Depends, HTTPException, Query
|
||||
@@ -85,6 +87,43 @@ def get_advisor(adv_id: int, db: Session = Depends(get_db)):
|
||||
return advisor
|
||||
|
||||
|
||||
# 查询顾问信息和该顾问名下的学生
|
||||
@router.get("/{adv_id}/students")
|
||||
def get_advisor_students(adv_id: int, db: Session = Depends(get_db)):
|
||||
if adv_id <= 0:
|
||||
raise HTTPException(422, "顾问编号必须大于0")
|
||||
advisor = wl_advisor_dao.get_advisor_with_students(db, adv_id)
|
||||
if not advisor:
|
||||
raise HTTPException(404, "顾问不存在")
|
||||
|
||||
student_list = []
|
||||
for student in advisor.student_list:
|
||||
student_list.append({
|
||||
"stu_no": student.stu_no,
|
||||
"stu_name": student.stu_name,
|
||||
"class_id": student.class_id,
|
||||
"advisor_id": student.advisor_id,
|
||||
"native_place": student.native_place,
|
||||
"graduate_school": student.graduate_school,
|
||||
"major": student.major,
|
||||
"in_time": student.in_time,
|
||||
"out_time": student.out_time,
|
||||
"edu": student.edu,
|
||||
"stu_age": student.stu_age,
|
||||
"stu_gender": student.stu_gender,
|
||||
})
|
||||
|
||||
return {
|
||||
"adv_id": advisor.adv_id,
|
||||
"adv_name": advisor.adv_name,
|
||||
"adv_gender": advisor.adv_gender,
|
||||
"adv_phone": advisor.adv_phone,
|
||||
"adv_email": advisor.adv_email,
|
||||
"adv_region": advisor.adv_region,
|
||||
"student_list": student_list,
|
||||
}
|
||||
|
||||
|
||||
@router.put("/{adv_id}", response_model=AdvisorOut)
|
||||
def update_advisor(adv_id: int, data: AdvisorUpdate, db: Session = Depends(get_db)):
|
||||
|
||||
@@ -114,3 +153,4 @@ def delete_advisor(adv_id: int, db: Session = Depends(get_db)):
|
||||
raise HTTPException(404, "顾问不存在")
|
||||
# 返回成功信息
|
||||
return {"msg": "删除成功"}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user