You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
940 B
24 lines
940 B
# routes/DmController.py
|
|
|
|
from fastapi import APIRouter, Depends
|
|
|
|
from utils.Database import *
|
|
from auth.dependencies import get_current_user
|
|
|
|
# 创建一个路由实例,需要依赖get_current_user,登录后才能访问
|
|
router = APIRouter(dependencies=[Depends(get_current_user)])
|
|
|
|
|
|
@router.get("/getStageSubjectList")
|
|
async def get_stage_subject_list():
|
|
# 先查询学段list
|
|
select_stage_sql: str = "select stage_id, stage_name from t_dm_stage where b_use = 1 order by sort_id;"
|
|
stage_list = await find_by_sql(select_stage_sql,())
|
|
for stage in stage_list:
|
|
# 再查询学科list
|
|
select_subject_sql: str = "select subject_id, subject_name from t_dm_subject where stage_id = " + str(stage["stage_id"]) + " order by sort_id;"
|
|
subject_list = await find_by_sql(select_subject_sql,())
|
|
stage["subject_list"] = subject_list
|
|
|
|
return {"success": True, "message": "成功!", "data": stage_list}
|