diff --git a/api/score.py b/api/score.py index a87e4c1..f610b3a 100644 --- a/api/score.py +++ b/api/score.py @@ -32,7 +32,7 @@ def list_score( return {"total": total, "data": data_list} -@scores_router.put("{score_id}", summary="更新成绩接口") +@scores_router.put("/{score_id}", summary="更新成绩接口") def modify_score(score_id: int, req: ScoreUpdate, db: Session = Depends(get_db)): update_dict = req.model_dump(exclude_unset=True) if not update_dict: @@ -43,9 +43,9 @@ def modify_score(score_id: int, req: ScoreUpdate, db: Session = Depends(get_db)) return {"msg": "修改成功"} -@scores_router.delete("{score_id}", summary="删除成绩接口") +@scores_router.delete("/{score_id}", summary="删除成绩接口") def remove_score(score_id: int, db: Session = Depends(get_db)): ok = delete_score_dao(score_id, db) if not ok: raise HTTPException(status_code=400, detail="删除失败,记录不存在或已删除") - return {"msg": "逻辑删除成功"} \ No newline at end of file + return {"msg": "逻辑删除成功"} diff --git a/dao/statistics.py b/dao/statistics.py index eb7db16..d2566c7 100644 --- a/dao/statistics.py +++ b/dao/statistics.py @@ -3,7 +3,6 @@ from sqlalchemy import func #`GET /statistics/students/age-over-30` #查询所有超过 30 岁的学员信息 - def age_over_thirty(Student,db): student_list=db.query(Student).filter(Student.age>30,Student.is_deleted==0).all() if not student_list : @@ -30,7 +29,7 @@ def age_over_thirty(Student,db): "is_deleted": student.is_deleted, }) return result - +#统计男、女、总人数 def gender_count(Student,db): result=db.query(Student.class_id,Student.gender,func.count(Student.id)).filter(Student.is_deleted==0).group_by(Student.class_id,Student.gender).all() if not result : @@ -43,6 +42,7 @@ def gender_count(Student,db): dict1[i]['总人数']+=k return dict1 #查询每次考试成绩都在 80 分以上的学生编号、姓名和成绩 +#首先,拿到最低值>80的人的列表,row。然后,遍历元素拿到符合条件的id的属性。 def score_over_eighty(Score,Student,db): student_list=db.query(Student.id, Student.student_name)\ .join(Score,Score.student_id==Student.id).filter(Student.is_deleted==0,Score.is_deleted==0).group_by(Student.id,Student.student_name)\ diff --git a/main.py b/main.py index abf63e5..d9ec4ed 100644 --- a/main.py +++ b/main.py @@ -1,4 +1,7 @@ from fastapi import FastAPI +from fastapi.responses import RedirectResponse +from fastapi.staticfiles import StaticFiles +from pathlib import Path from api.example import example_router from middleware import log_middleware from api.statistics import statistics_router @@ -8,6 +11,12 @@ from api.teacher import router as teacher_router,class_teacher_router from api.magic import magic_router app = FastAPI(title='学生管理系统') +app.mount("/ui", StaticFiles(directory=Path(__file__).resolve().parent / "frontend", html=True), name="frontend") + +@app.get("/", include_in_schema=False) +def home(): + return RedirectResponse("/ui/") + app.middleware("http")(log_middleware) app.include_router(magic_router) @@ -25,7 +34,6 @@ from api import consultant app.include_router(consultant.router) #-------------张昕浩--------------- app.include_router(example_router) -app.include_router(magic_router) app.include_router(statistics_router, prefix="/statistics") #-------------曾凯---------------