data_management.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. from re import A
  2. from typing import Optional
  3. from fastapi import APIRouter
  4. from fastapi import Depends
  5. from sqlalchemy.orm import Session
  6. from app import routers, schemas
  7. from app.common.minio import FileHandler
  8. import app.crud as crud
  9. from utils.sx_time import sxtimeit
  10. from utils.sx_web import web_try
  11. from fastapi_pagination import Page, add_pagination, paginate, Params
  12. from app import get_db
  13. router = APIRouter(
  14. prefix="/jpt/datamanagement",
  15. tags=["datamanagement-数据管理"],
  16. )
  17. @router.post("/")
  18. @web_try()
  19. @sxtimeit
  20. def create_data_management(item: schemas.DataManagementCreate, db: Session = Depends(get_db)):
  21. return crud.create_data_management(db, item)
  22. @router.get("/")
  23. @web_try()
  24. @sxtimeit
  25. def get_data_managements(user_id: str, project_id: str, db: Session = Depends(get_db)):
  26. return crud.get_data_managements(db, user_id, project_id)
  27. @router.delete("/")
  28. @web_try()
  29. @sxtimeit
  30. def delete_data_management(data_management_id: int, db: Session = Depends(get_db)):
  31. data_management = crud.delete_data_management(db, data_management_id)
  32. file_handler = FileHandler("datax")
  33. file_handler.del_image(data_management.storage_path)
  34. return data_management