Spaces:
Paused
Paused
| from typing import Annotated | |
| from fastapi import BackgroundTasks, File, Query, Request, Response, UploadFile | |
| from fastapi.responses import StreamingResponse | |
| from common.aspect.pre_auth import PreAuthDependency | |
| from common.router import APIRouterPro | |
| from common.vo import DynamicResponseModel | |
| from module_admin.entity.vo.common_vo import UploadResponseModel | |
| from module_admin.service.common_service import CommonService | |
| from utils.log_util import logger | |
| from utils.response_util import ResponseUtil | |
| common_controller = APIRouterPro(prefix='/common', order_num=16, tags=['通用模块'], dependencies=[PreAuthDependency()]) | |
| async def common_upload(request: Request, file: Annotated[UploadFile, File(...)]) -> Response: | |
| upload_result = await CommonService.upload_service(request, file) | |
| logger.info('上传成功') | |
| return ResponseUtil.success(model_content=upload_result.result) | |
| async def common_download( | |
| request: Request, | |
| background_tasks: BackgroundTasks, | |
| file_name: Annotated[str, Query(alias='fileName')], | |
| delete: Annotated[bool, Query()], | |
| ) -> Response: | |
| download_result = await CommonService.download_services(background_tasks, file_name, delete) | |
| logger.info(download_result.message) | |
| return ResponseUtil.streaming(data=download_result.result) | |
| async def common_download_resource(request: Request, resource: Annotated[str, Query()]) -> Response: | |
| download_resource_result = await CommonService.download_resource_services(resource) | |
| logger.info(download_resource_result.message) | |
| return ResponseUtil.streaming(data=download_resource_result.result) | |