This commit is contained in:
2026-09-22 10:41:26 +08:00
parent 9e13a01c76
commit 59f81833a3
3 changed files with 39 additions and 45 deletions
+5 -12
View File
@@ -1,8 +1,6 @@
from fastapi import APIRouter, Query, Depends, HTTPException, Path
from util.database import get_db
from fastapi import APIRouter, Query, Depends, HTTPException, Path,Form
from dao import employment_dao
from dao.employment_dao import get_emp_dao, add_emp_dao, check_stu_dao, update_emp_dao, delete_emp_dao
from dao.employment_dao import add_emp_dao, update_emp_dao, delete_emp_dao
from schema.employment_schema import EmploymentRequest,EmploymentResponse
from util.database import get_db
from typing import Optional
@@ -18,19 +16,14 @@ def get_emp_info1(stu_id: Optional[int]=Path(description='学生编号')
raise HTTPException(status_code=404, detail='该学生就业信息不存在')
@emp_api.get('/employment/class/{class_id}',response_model=EmploymentResponse,summary='获取班级学生就业信息')
def get_emp_info2(class_id: Optional[int],db=Depends(get_db)):
def get_emp_info2(class_id: Optional[int]=Path(description='班级编号')
,db=Depends(get_db)):
if class_id:
return employment_dao.get_emp_dao(class_id=class_id,db=db)
raise HTTPException(status_code=404, detail='该班级就业信息不存在')
@emp_api.post('/employment/students/{stu_id}',response_model=EmploymentResponse,summary='新增学生就业信息')
def create_emp_info(stu_id:int,emp:EmploymentRequest,db=Depends(get_db)):
if not check_stu_dao(stu_id,db):
raise HTTPException(status_code=404, detail='该学生不存在,无法添加就业信息')
emp.stu_id = stu_id
exist = db.query(employment_dao.Employment_info).filter(employment_dao.Employment_info.stu_id == stu_id,employment_dao.Employment_info.delete_status == 0).first()
if exist:
raise HTTPException(status_code=409,detail='该学生已有就业信息,请勿重复增加!')
def create_emp_info(emp:EmploymentRequest=Form(),db=Depends(get_db)):
d=emp.model_dump(exclude_unset=False)
r=add_emp_dao(d,db)
if not r: