12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- from re import S
- from typing import Optional
- from fastapi import APIRouter
- from fastapi import Depends
- from sqlalchemy.orm import Session
- from app import schemas
- import app.crud as crud
- from utils.sx_time import sxtimeit
- from utils.sx_web import web_try
- from fastapi_pagination import Page, add_pagination, paginate, Params
- from app import get_db
- router = APIRouter(
- prefix="/jpt/jm_homework",
- tags=["jm_homework-作业管理"],
- )
- @router.post("/")
- @web_try()
- @sxtimeit
- def create_jm_homework(item: schemas.JmHomeworkCreate, db: Session = Depends(get_db)):
- # 根据获取到的文件路径另存一份并改变
- return crud.create_jm_homework(db, item)
- @router.get("/")
- @web_try()
- @sxtimeit
- def get_jm_homeworks(project_id: str, db: Session = Depends(get_db)):
- return crud.get_jm_homeworks(db, project_id)
- @router.get("/info")
- @web_try()
- @sxtimeit
- def get_jm_homework_info(homework_id: str, db: Session = Depends(get_db)):
- return crud.get_jm_homework_info(db, homework_id)
- @router.put("/")
- @web_try()
- @sxtimeit
- def update_jm_homework(jm_id: int, update_item: schemas.JmHomeworkUpdate, db: Session = Depends(get_db)):
- # 根据获取到的文件路径另存一份并改变
- return crud.update_jm_homework(db, jm_id, update_item)
- @router.delete("/")
- @web_try()
- @sxtimeit
- def delete_jm_homework(jm_id: int, db: Session = Depends(get_db)):
- jm_log_infos = crud.get_jm_job_infos(db)
- jm_job_ids = [jm_job.id for jm_job in jm_log_infos]
- res = crud.find_by_homework_and_job(db, jm_job_ids,jm_id)
- if len(res) > 0:
- raise Exception("该作业正在被定时任务使用,不可删除")
- return crud.delete_jm_homework(db, jm_id)
|