system.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. # coding:utf-8
  2. from fastapi import APIRouter, Depends, UploadFile, File
  3. from app.api import Response, get_current_user
  4. from app.models.base_model import get_db
  5. from app.models.role_model import RoleData, RoleModel
  6. from app.models.system import SystemData
  7. from app.models.user_model import UserModel
  8. from app.service.system import services_get_system_data, services_update_system_data, service_upload_logo_image
  9. system_router = APIRouter()
  10. @system_router.get("/info", response_model=Response)
  11. async def api_get_system_data(db=Depends(get_db)):
  12. data = await services_get_system_data(db)
  13. return Response(code=200, msg="successfully", data=data)
  14. @system_router.put("/info", response_model=Response)
  15. async def api_update_system_data(system: SystemData, u: UserModel = Depends(get_current_user), db=Depends(get_db)):
  16. data = await services_update_system_data(db, system.title, system.desc, system.logo)
  17. if not data:
  18. return Response(code=500, msg="failed", data=data)
  19. return Response(code=200, msg="successfully", data=data)
  20. @system_router.post("/upload", response_model=Response)
  21. async def api_upload_logo_image(file: UploadFile = File(...)):
  22. file_name = await service_upload_logo_image(file)
  23. if not file_name:
  24. return Response(code=500, msg="failed", data={"logo": ""})
  25. return Response(code=200, msg="successfully", data={"logo": file_name})