Browse Source

style: 使用ruff格式化通用模块,优化导入

master
insistence 7 months ago
parent
commit
f41ee26067
  1. 24
      ruoyi-fastapi-backend/module_admin/controller/common_controller.py
  2. 4
      ruoyi-fastapi-backend/module_admin/entity/vo/common_vo.py
  3. 18
      ruoyi-fastapi-backend/module_admin/service/common_service.py

24
ruoyi-fastapi-backend/module_admin/controller/common_controller.py

@ -1,14 +1,13 @@
from fastapi import APIRouter from fastapi import APIRouter, BackgroundTasks, Depends, File, Query, Request, UploadFile
from fastapi import Depends, File, Query from module_admin.service.common_service import CommonService
from module_admin.service.login_service import LoginService from module_admin.service.login_service import LoginService
from module_admin.service.common_service import * from utils.log_util import logger
from utils.response_util import * from utils.response_util import ResponseUtil
from utils.log_util import *
commonController = APIRouter(prefix='/common', dependencies=[Depends(LoginService.get_current_user)]) commonController = APIRouter(prefix='/common', dependencies=[Depends(LoginService.get_current_user)])
@commonController.post("/upload") @commonController.post('/upload')
async def common_upload(request: Request, file: UploadFile = File(...)): async def common_upload(request: Request, file: UploadFile = File(...)):
upload_result = await CommonService.upload_service(request, file) upload_result = await CommonService.upload_service(request, file)
logger.info('上传成功') logger.info('上传成功')
@ -16,16 +15,21 @@ async def common_upload(request: Request, file: UploadFile = File(...)):
return ResponseUtil.success(model_content=upload_result.result) return ResponseUtil.success(model_content=upload_result.result)
@commonController.get("/download") @commonController.get('/download')
async def common_download(request: Request, background_tasks: BackgroundTasks, file_name: str = Query(alias='fileName'), delete: bool = Query()): async def common_download(
request: Request,
background_tasks: BackgroundTasks,
file_name: str = Query(alias='fileName'),
delete: bool = Query(),
):
download_result = await CommonService.download_services(background_tasks, file_name, delete) download_result = await CommonService.download_services(background_tasks, file_name, delete)
logger.info(download_result.message) logger.info(download_result.message)
return ResponseUtil.streaming(data=download_result.result) return ResponseUtil.streaming(data=download_result.result)
@commonController.get("/download/resource") @commonController.get('/download/resource')
async def common_download(request: Request, resource: str = Query()): async def common_download_resource(request: Request, resource: str = Query()):
download_resource_result = await CommonService.download_resource_services(resource) download_resource_result = await CommonService.download_resource_services(resource)
logger.info(download_resource_result.message) logger.info(download_resource_result.message)

4
ruoyi-fastapi-backend/module_admin/entity/vo/common_vo.py

@ -1,12 +1,13 @@
from pydantic import BaseModel, ConfigDict, Field from pydantic import BaseModel, ConfigDict, Field
from pydantic.alias_generators import to_camel from pydantic.alias_generators import to_camel
from typing import Optional, Any from typing import Any, Optional
class CrudResponseModel(BaseModel): class CrudResponseModel(BaseModel):
""" """
操作响应模型 操作响应模型
""" """
is_success: bool = Field(description='操作是否成功') is_success: bool = Field(description='操作是否成功')
message: str = Field(description='响应信息') message: str = Field(description='响应信息')
result: Optional[Any] = Field(default=None, description='响应结果') result: Optional[Any] = Field(default=None, description='响应结果')
@ -16,6 +17,7 @@ class UploadResponseModel(BaseModel):
""" """
上传响应模型 上传响应模型
""" """
model_config = ConfigDict(alias_generator=to_camel) model_config = ConfigDict(alias_generator=to_camel)
file_name: Optional[str] = Field(default=None, description='新文件映射路径') file_name: Optional[str] = Field(default=None, description='新文件映射路径')

18
ruoyi-fastapi-backend/module_admin/service/common_service.py

@ -1,10 +1,9 @@
from fastapi import Request, BackgroundTasks
import os import os
from fastapi import UploadFile
from datetime import datetime from datetime import datetime
from fastapi import BackgroundTasks, Request, UploadFile
from config.env import UploadConfig from config.env import UploadConfig
from module_admin.entity.vo.common_vo import *
from exceptions.exception import ServiceException from exceptions.exception import ServiceException
from module_admin.entity.vo.common_vo import CrudResponseModel, UploadResponseModel
from utils.upload_util import UploadUtil from utils.upload_util import UploadUtil
@ -43,9 +42,9 @@ class CommonService:
fileName=f'{UploadConfig.UPLOAD_PREFIX}/{relative_path}/{filename}', fileName=f'{UploadConfig.UPLOAD_PREFIX}/{relative_path}/{filename}',
newFileName=filename, newFileName=filename,
originalFilename=file.filename, originalFilename=file.filename,
url=f'{request.base_url}{UploadConfig.UPLOAD_PREFIX[1:]}/{relative_path}/{filename}' url=f'{request.base_url}{UploadConfig.UPLOAD_PREFIX[1:]}/{relative_path}/{filename}',
), ),
message='上传成功' message='上传成功',
) )
@classmethod @classmethod
@ -75,8 +74,13 @@ class CommonService:
:return: 上传结果 :return: 上传结果
""" """
filepath = os.path.join(resource.replace(UploadConfig.UPLOAD_PREFIX, UploadConfig.UPLOAD_PATH)) filepath = os.path.join(resource.replace(UploadConfig.UPLOAD_PREFIX, UploadConfig.UPLOAD_PATH))
filename = resource.rsplit("/", 1)[-1] filename = resource.rsplit('/', 1)[-1]
if '..' in filename or not UploadUtil.check_file_timestamp(filename) or not UploadUtil.check_file_machine(filename) or not UploadUtil.check_file_random_code(filename): if (
'..' in filename
or not UploadUtil.check_file_timestamp(filename)
or not UploadUtil.check_file_machine(filename)
or not UploadUtil.check_file_random_code(filename)
):
raise ServiceException(message='文件名称不合法') raise ServiceException(message='文件名称不合法')
elif not UploadUtil.check_file_exists(filepath): elif not UploadUtil.check_file_exists(filepath):
raise ServiceException(message='文件不存在') raise ServiceException(message='文件不存在')

Loading…
Cancel
Save