mirror of
https://github.com/fastapiadmin/FastapiAdmin.git
synced 2026-09-21 12:52:26 +00:00
feat: 新增配置中心功能并优化系统配置管理
refactor: 重构配置管理相关代码,包括模型、参数和CRUD操作 docs: 更新README文档中的图片引用 style: 统一前端表格样式和布局,优化暗色模式背景色 fix: 修复日志记录中用户信息泄露问题 perf: 优化前端路由和组件性能 chore: 更新依赖和脚本文件 ``` 这个提交消息涵盖了以下主要变更: 1. 新增了配置中心功能模块 2. 重构了后端配置管理相关代码 3. 更新了文档中的图片引用 4. 统一了前端表格样式 5. 修复了安全相关问题 6. 优化了前端性能 7. 更新了项目依赖 消息遵循了约定的提交格式,每个类型都准确地描述了变更的性质,并保持了简洁性。
This commit is contained in:
@@ -1,43 +1,99 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from fastapi import APIRouter, Depends, Request, UploadFile
|
||||
from fastapi.responses import JSONResponse
|
||||
from fastapi import APIRouter, Depends, Query, Request, UploadFile
|
||||
from fastapi.responses import JSONResponse, StreamingResponse
|
||||
from aioredis import Redis
|
||||
|
||||
from app.common.response import SuccessResponse
|
||||
from app.core.dependencies import AuthPermission, redis_getter, db_getter
|
||||
from app.api.v1.params.system.config_param import ConfigQueryParams
|
||||
from app.common.request import PaginationService
|
||||
from app.common.response import StreamResponse, SuccessResponse
|
||||
from app.core.base_params import PaginationQueryParams
|
||||
from app.core.dependencies import AuthPermission, redis_getter
|
||||
from app.core.router_class import OperationLogRoute
|
||||
from app.core.logger import logger
|
||||
from app.api.v1.schemas.system.auth_schema import AuthSchema
|
||||
from app.api.v1.schemas.system.config_schema import ConfigUpdateSchema
|
||||
from app.api.v1.schemas.system.config_schema import ConfigCreateSchema, ConfigUpdateSchema
|
||||
from app.api.v1.services.system.config_service import ConfigService
|
||||
from app.utils.common_util import bytes2file_response
|
||||
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
|
||||
router = APIRouter(route_class=OperationLogRoute)
|
||||
|
||||
@router.get("/detail", summary="获取系统配置详情", description="获取系统配置详情")
|
||||
async def get_type_detail_controller(
|
||||
id: int = Query(..., description="系统配置ID"),
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:config:query"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await ConfigService.get_obj_detail_service(id=id, auth=auth)
|
||||
logger.info(f"获取系统配置详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取系统配置详情成功")
|
||||
|
||||
|
||||
@router.get("/list", summary="获取配置", description="获取配置")
|
||||
async def get_obj_list_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:config:query"]))
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:config:query"])),
|
||||
page: PaginationQueryParams = Depends(),
|
||||
search: ConfigQueryParams = Depends(),
|
||||
) -> JSONResponse:
|
||||
result_dict = await ConfigService.get_service(auth=auth, id=1)
|
||||
logger.info(f"{auth.user.name} 获取配置成功")
|
||||
result_dict_list = await ConfigService.get_obj_list_service(auth=auth, search=search, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"获取配置成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询配置列表成功")
|
||||
|
||||
|
||||
@router.post("/create", summary="创建系统配置", description="创建系统配置")
|
||||
async def create_obj_controller(
|
||||
data: ConfigCreateSchema,
|
||||
redis: Redis = Depends(redis_getter),
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:config:create"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await ConfigService.create_obj_service(auth=auth, redis=redis, data=data)
|
||||
logger.info(f"创建系统配置成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建系统配置成功")
|
||||
|
||||
|
||||
@router.put("/update", summary="修改配置", description="修改配置")
|
||||
async def update_objs_controller(
|
||||
data: ConfigUpdateSchema,
|
||||
redis: Redis = Depends(redis_getter),
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:config:update"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await ConfigService.update_service(auth=auth, redis=redis, data=data)
|
||||
logger.info(f"{auth.user.name} 更新配置成功 {result_dict}")
|
||||
result_dict = await ConfigService.update_obj_service(auth=auth, redis=redis, data=data)
|
||||
logger.info(f"更新配置成功 {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="更新配置成功")
|
||||
|
||||
|
||||
@router.delete("/delete", summary="删除系统配置", description="删除系统配置")
|
||||
async def delete_type_controller(
|
||||
redis: Redis = Depends(redis_getter),
|
||||
id: int = Query(..., description="系统配置ID"),
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:config:delete"]))
|
||||
) -> JSONResponse:
|
||||
await ConfigService.delete_obj_service(auth=auth, redis=redis, id=id)
|
||||
logger.info(f"删除系统配置成功: {id}")
|
||||
return SuccessResponse(msg="删除系统配置成功")
|
||||
|
||||
|
||||
@router.post('/export', summary="导出系统配置", description="导出系统配置")
|
||||
async def export_type_list_controller(
|
||||
search: ConfigService = Depends(),
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:config:export"]))
|
||||
) -> StreamingResponse:
|
||||
# 获取全量数据
|
||||
result_dict_list = await ConfigService.get_obj_list_service(search=search, auth=auth)
|
||||
export_result = await ConfigService.export_obj_service(data_list=result_dict_list)
|
||||
logger.info('导出系统配置成功')
|
||||
|
||||
return StreamResponse(
|
||||
data=bytes2file_response(export_result),
|
||||
media_type='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
|
||||
headers = {
|
||||
'Content-Disposition': 'attachment; filename=data.xlsx'
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@router.post("/upload", summary="上传文件", dependencies=[Depends(AuthPermission(permissions=["system:config:upload"]))])
|
||||
async def upload_file_controller(
|
||||
file: UploadFile,
|
||||
@@ -51,8 +107,7 @@ async def upload_file_controller(
|
||||
@router.get("/info", summary="获取初始化缓存系统配置", description="获取初始化缓存系统配置")
|
||||
async def get_init_config_controller(
|
||||
redis: Redis = Depends(redis_getter),
|
||||
db: AsyncSession = Depends(db_getter)
|
||||
) -> JSONResponse:
|
||||
result_dict = await ConfigService.get_init_config_service(redis=redis, db=db)
|
||||
result_dict = await ConfigService.get_init_config_service(redis=redis)
|
||||
logger.info(f"获取初始化缓存系统配置成功 {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="获取初始化缓存系统配置成功")
|
||||
|
||||
@@ -30,7 +30,7 @@ async def get_obj_list_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await DeptService.get_dept_list_service(search=search, auth=auth, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list=result_dict_list, page_no=page.page_no, page_size=page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询部门成功")
|
||||
logger.info(f"查询部门成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询部门成功")
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ async def get_obj_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dept:query"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DeptService.get_dept_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 查询部门详情成功 {id}")
|
||||
logger.info(f"查询部门详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="查询部门详情成功")
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@ async def create_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dept:create"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DeptService.create_dept_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 创建部门成功: {result_dict}")
|
||||
logger.info(f"创建部门成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建部门成功")
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ async def update_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dept:update"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DeptService.update_dept_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 修改部门成功: {result_dict}")
|
||||
logger.info(f"修改部门成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改部门成功")
|
||||
|
||||
|
||||
@@ -70,7 +70,7 @@ async def delete_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dept:delete"]))
|
||||
) -> JSONResponse:
|
||||
await DeptService.delete_dept_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 删除部门成功: {id}")
|
||||
logger.info(f"删除部门成功: {id}")
|
||||
return SuccessResponse(msg="删除部门成功")
|
||||
|
||||
|
||||
@@ -80,5 +80,5 @@ async def batch_set_available_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dept:patch"]))
|
||||
) -> JSONResponse:
|
||||
await DeptService.batch_set_available_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 批量修改部门状态成功: {data.ids}")
|
||||
logger.info(f"批量修改部门状态成功: {data.ids}")
|
||||
return SuccessResponse(msg="批量修改部门状态成功")
|
||||
|
||||
@@ -31,7 +31,7 @@ async def get_type_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_type:query"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DictTypeService.get_obj_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 获取字典类型详情成功 {id}")
|
||||
logger.info(f"获取字典类型详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取字典类型详情成功")
|
||||
|
||||
@router.get("/type/list", summary="查询字典类型", description="查询字典类型")
|
||||
@@ -42,7 +42,7 @@ async def get_type_list_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await DictTypeService.get_obj_list_service(auth=auth, search=search, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询字典类型列表成功")
|
||||
logger.info(f"查询字典类型列表成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询字典类型列表成功")
|
||||
|
||||
@router.get("/type/optionselect", summary="获取全部字典类型", description="获取全部字典类型")
|
||||
@@ -50,7 +50,7 @@ async def get_type_list_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_type:query"]))
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await DictTypeService.get_obj_list_service(auth=auth)
|
||||
logger.info(f"{auth.user.name} 获取字典类型列表成功")
|
||||
logger.info(f"获取字典类型列表成功")
|
||||
return SuccessResponse(data=result_dict_list, msg="获取字典类型列表成功")
|
||||
|
||||
@router.post("/type/create", summary="创建字典类型", description="创建字典类型")
|
||||
@@ -60,7 +60,7 @@ async def create_type_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_type:create"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DictTypeService.create_obj_service(auth=auth, redis=redis, data=data)
|
||||
logger.info(f"{auth.user.name} 创建字典类型成功: {result_dict}")
|
||||
logger.info(f"创建字典类型成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建字典类型成功")
|
||||
|
||||
@router.put("/type/update", summary="修改字典类型", description="修改字典类型")
|
||||
@@ -70,7 +70,7 @@ async def update_type_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_type:update"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DictTypeService.update_obj_service(auth=auth, redis=redis, data=data)
|
||||
logger.info(f"{auth.user.name} 修改字典类型成功: {result_dict}")
|
||||
logger.info(f"修改字典类型成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改字典类型成功")
|
||||
|
||||
@router.delete("/type/delete", summary="删除字典类型", description="删除字典类型")
|
||||
@@ -80,7 +80,7 @@ async def delete_type_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_type:delete"]))
|
||||
) -> JSONResponse:
|
||||
await DictTypeService.delete_obj_service(auth=auth, redis=redis, id=id)
|
||||
logger.info(f"{auth.user.name} 删除字典类型成功: {id}")
|
||||
logger.info(f"删除字典类型成功: {id}")
|
||||
return SuccessResponse(msg="删除字典类型成功")
|
||||
|
||||
@router.post('/type/export', summary="导出字典类型", description="导出字典类型")
|
||||
@@ -107,7 +107,7 @@ async def get_data_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_data:query"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DictDataService.get_obj_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 获取字典数据详情成功 {id}")
|
||||
logger.info(f"获取字典数据详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取字典数据详情成功")
|
||||
|
||||
@router.get("/data/list", summary="查询字典数据", description="查询字典数据")
|
||||
@@ -118,7 +118,7 @@ async def get_data_list_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await DictDataService.get_obj_list_service(auth=auth, search=search, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询字典数据列表成功")
|
||||
logger.info(f"查询字典数据列表成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询字典数据列表成功")
|
||||
|
||||
@router.post("/data/create", summary="创建字典数据", description="创建字典数据")
|
||||
@@ -128,7 +128,7 @@ async def create_data_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_data:create"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DictDataService.create_obj_service(auth=auth, redis=redis, data=data)
|
||||
logger.info(f"{auth.user.name} 创建字典数据成功: {result_dict}")
|
||||
logger.info(f"创建字典数据成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建字典数据成功")
|
||||
|
||||
@router.put("/data/update", summary="修改字典数据", description="修改字典数据")
|
||||
@@ -138,7 +138,7 @@ async def update_data_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_data:update"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await DictDataService.update_obj_service(auth=auth, redis=redis, data=data)
|
||||
logger.info(f"{auth.user.name} 修改字典数据成功: {result_dict}")
|
||||
logger.info(f"修改字典数据成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改字典数据成功")
|
||||
|
||||
@router.delete("/data/delete", summary="删除字典数据", description="删除字典数据")
|
||||
@@ -148,7 +148,7 @@ async def delete_data_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:dict_data:delete"]))
|
||||
) -> JSONResponse:
|
||||
await DictDataService.delete_obj_service(auth=auth, redis=redis, id=id)
|
||||
logger.info(f"{auth.user.name} 删除字典数据成功: {id}")
|
||||
logger.info(f"删除字典数据成功: {id}")
|
||||
return SuccessResponse(msg="删除字典数据成功")
|
||||
|
||||
@router.post('/data/export', summary="导出字典数据", description="导出字典数据")
|
||||
|
||||
@@ -28,7 +28,7 @@ async def get_obj_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:job:query"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await JobService.get_job_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 获取定时任务详情成功 {id}")
|
||||
logger.info(f"获取定时任务详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取定时任务详情成功")
|
||||
|
||||
@router.get("/list", summary="查询定时任务", description="查询定时任务")
|
||||
@@ -39,7 +39,7 @@ async def get_obj_list_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await JobService.get_job_list_service(auth=auth, search=search, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询定时任务列表成功")
|
||||
logger.info(f"查询定时任务列表成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询定时任务列表成功")
|
||||
|
||||
@router.post("/create", summary="创建定时任务", description="创建定时任务")
|
||||
@@ -48,7 +48,7 @@ async def create_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:job:create"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await JobService.create_job_service(auth=auth, data=data)
|
||||
logger.info(f"{auth.user.name} 创建定时任务成功: {result_dict}")
|
||||
logger.info(f"创建定时任务成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建定时任务成功")
|
||||
|
||||
@router.put("/update", summary="修改定时任务", description="修改定时任务")
|
||||
@@ -57,7 +57,7 @@ async def update_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:job:update"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await JobService.update_job_service(auth=auth, data=data)
|
||||
logger.info(f"{auth.user.name} 修改定时任务成功: {result_dict}")
|
||||
logger.info(f"修改定时任务成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改定时任务成功")
|
||||
|
||||
@router.delete("/delete", summary="删除定时任务", description="删除定时任务")
|
||||
@@ -66,7 +66,7 @@ async def delete_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:job:delete"]))
|
||||
) -> JSONResponse:
|
||||
await JobService.delete_job_service(auth=auth, id=id)
|
||||
logger.info(f"{auth.user.name} 删除定时任务成功: {id}")
|
||||
logger.info(f"删除定时任务成功: {id}")
|
||||
return SuccessResponse(msg="删除定时任务成功")
|
||||
|
||||
@router.post('/export', summary="导出定时任务", description="导出定时任务")
|
||||
@@ -92,7 +92,7 @@ async def clear_obj_log_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:job:delete"]))
|
||||
) -> JSONResponse:
|
||||
await JobService.clear_job_service(auth=auth)
|
||||
logger.info(f"{auth.user.name} 清空定时任务成功")
|
||||
logger.info(f"清空定时任务成功")
|
||||
return SuccessResponse(msg="清空定时任务成功")
|
||||
|
||||
@router.put("/option", summary="暂停/恢复/重启定时任务", description="暂停/恢复/重启定时任务")
|
||||
@@ -102,7 +102,7 @@ async def option_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:job:update"]))
|
||||
) -> JSONResponse:
|
||||
await JobService.option_job_service(auth=auth, id=id, option=option)
|
||||
logger.info(f"{auth.user.name} 操作定时任务成功: {id}")
|
||||
logger.info(f"操作定时任务成功: {id}")
|
||||
return SuccessResponse(msg="操作定时任务成功")
|
||||
|
||||
@router.get("/log", summary="获取定时任务日志", description="获取定时任务日志", dependencies=[Depends(AuthPermission(permissions=["system:job:query"]))])
|
||||
|
||||
@@ -31,7 +31,7 @@ async def get_obj_list_controller(
|
||||
menu_items = await MenuService.convert_to_menu(result_dict_list)
|
||||
result_dict = await PaginationService.get_page_obj(data_list=menu_items, page_no=page.page_no,
|
||||
page_size=page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询菜单成功")
|
||||
logger.info(f"查询菜单成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询菜单成功")
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ async def get_obj_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:menu:query"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await MenuService.get_menu_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 查询菜单情成功 {id}")
|
||||
logger.info(f"查询菜单情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取菜单成功")
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@ async def create_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:menu:create"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await MenuService.create_menu_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 创建菜单成功: {result_dict}")
|
||||
logger.info(f"创建菜单成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建菜单成功")
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ async def update_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:menu:update"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await MenuService.update_menu_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 修改菜单成功: {result_dict}")
|
||||
logger.info(f"修改菜单成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改菜单成功")
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ async def delete_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:menu:delete"]))
|
||||
) -> JSONResponse:
|
||||
await MenuService.delete_menu_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 删除菜单成功: {id}")
|
||||
logger.info(f"删除菜单成功: {id}")
|
||||
return SuccessResponse(msg="删除菜单成功")
|
||||
|
||||
|
||||
@@ -81,5 +81,5 @@ async def batch_set_available_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:menu:patch"]))
|
||||
) -> JSONResponse:
|
||||
await MenuService.set_menu_available_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 批量修改菜单状态成功: {data.ids}")
|
||||
logger.info(f"批量修改菜单状态成功: {data.ids}")
|
||||
return SuccessResponse(msg="批量修改菜单状态成功")
|
||||
|
||||
@@ -28,7 +28,7 @@ async def get_obj_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:notice:query"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await NoticeService.get_notice_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 获取公告详情成功 {id}")
|
||||
logger.info(f"获取公告详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取公告详情成功")
|
||||
|
||||
@router.get("/list", summary="查询公告", description="查询公告")
|
||||
@@ -39,7 +39,7 @@ async def get_obj_list_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await NoticeService.get_notice_list_service(auth=auth, search=search, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询公告列表成功")
|
||||
logger.info(f"查询公告列表成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询公告列表成功")
|
||||
|
||||
@router.post("/create", summary="创建公告", description="创建公告")
|
||||
@@ -48,7 +48,7 @@ async def create_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:notice:create"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await NoticeService.create_notice_service(auth=auth, data=data)
|
||||
logger.info(f"{auth.user.name} 创建公告成功: {result_dict}")
|
||||
logger.info(f"创建公告成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建公告成功")
|
||||
|
||||
@router.put("/update", summary="修改公告", description="修改公告")
|
||||
@@ -57,7 +57,7 @@ async def update_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:notice:update"]))
|
||||
) -> JSONResponse:
|
||||
result_dict = await NoticeService.update_notice_service(auth=auth, data=data)
|
||||
logger.info(f"{auth.user.name} 修改公告成功: {result_dict}")
|
||||
logger.info(f"修改公告成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改公告成功")
|
||||
|
||||
@router.delete("/delete", summary="删除公告", description="删除公告")
|
||||
@@ -66,7 +66,7 @@ async def delete_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:notice:delete"]))
|
||||
) -> JSONResponse:
|
||||
await NoticeService.delete_notice_service(auth=auth, id=id)
|
||||
logger.info(f"{auth.user.name} 删除公告成功: {id}")
|
||||
logger.info(f"删除公告成功: {id}")
|
||||
return SuccessResponse(msg="删除公告成功")
|
||||
|
||||
@router.patch("/available/setting", summary="批量修改公告状态", description="批量修改公告状态")
|
||||
@@ -75,7 +75,7 @@ async def batch_set_available_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:notice:patch"]))
|
||||
) -> JSONResponse:
|
||||
await NoticeService.set_notice_available_service(auth=auth, data=data)
|
||||
logger.info(f"{auth.user.name} 批量修改公告状态成功: {data.ids}")
|
||||
logger.info(f"批量修改公告状态成功: {data.ids}")
|
||||
return SuccessResponse(msg="批量修改公告状态成功")
|
||||
|
||||
@router.post('/export', summary="导出公告", description="导出公告")
|
||||
@@ -103,5 +103,5 @@ async def get_obj_list_available_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await NoticeService.get_notice_list_available_service(auth=auth)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list)
|
||||
logger.info(f"{auth.user.name} 查询已启用公告列表成功")
|
||||
logger.info(f"查询已启用公告列表成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询已启用公告列表成功")
|
||||
|
||||
@@ -26,7 +26,7 @@ async def get_obj_list_controller(
|
||||
""" 查询日志 """
|
||||
result_dict_list = await OperationLogService.get_log_list_service(search=search, auth=auth, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询日志成功")
|
||||
logger.info(f"查询日志成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询日志成功")
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ async def get_obj_detail_controller(
|
||||
) -> JSONResponse:
|
||||
""" 详情日志 """
|
||||
result_dict = await OperationLogService.get_log_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 查询日志成功 {id}")
|
||||
logger.info(f"查询日志成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取日志详情成功")
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ async def delete_obj_log_controller(
|
||||
) -> JSONResponse:
|
||||
""" 删除日志 """
|
||||
await OperationLogService.delete_log_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 删除日志成功 {id}")
|
||||
logger.info(f"删除日志成功 {id}")
|
||||
return SuccessResponse(msg="删除日志成功")
|
||||
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ async def get_obj_list_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await PositionService.get_position_list_service(search=search, auth=auth, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询岗位列表成功")
|
||||
logger.info(f"查询岗位列表成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询岗位列表成功")
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ async def get_obj_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:position:query"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await PositionService.get_position_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 查询岗位详情成功 {id}")
|
||||
logger.info(f"查询岗位详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取岗位详情成功")
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@ async def create_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:position:create"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await PositionService.create_position_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 创建岗位成功: {result_dict}")
|
||||
logger.info(f"创建岗位成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建岗位成功")
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ async def update_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:position:update"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await PositionService.update_position_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 修改岗位成功: {result_dict}")
|
||||
logger.info(f"修改岗位成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改岗位成功")
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ async def delete_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:position:delete"])),
|
||||
) -> JSONResponse:
|
||||
await PositionService.delete_position_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 删除岗位成功: {id}")
|
||||
logger.info(f"删除岗位成功: {id}")
|
||||
return SuccessResponse(msg="删除岗位成功")
|
||||
|
||||
|
||||
@@ -81,7 +81,7 @@ async def batch_set_available_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:position:patch"])),
|
||||
) -> JSONResponse:
|
||||
await PositionService.set_position_available_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 批量修改岗位状态成功: {data.ids}")
|
||||
logger.info(f"批量修改岗位状态成功: {data.ids}")
|
||||
return SuccessResponse(msg="批量修改岗位状态成功")
|
||||
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ async def get_obj_list_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await RoleService.get_role_list_service(search=search, auth=auth, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询角色成功")
|
||||
logger.info(f"查询角色成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询角色成功")
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ async def get_obj_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:role:query"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await RoleService.get_role_detail_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 获取角色详情成功 {id}")
|
||||
logger.info(f"获取角色详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg="获取角色详情成功")
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ async def create_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:role:create"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await RoleService.create_role_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 创建角色成功: {result_dict}")
|
||||
logger.info(f"创建角色成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建角色成功")
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ async def update_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:role:update"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await RoleService.update_role_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 修改角色成功: {result_dict}")
|
||||
logger.info(f"修改角色成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改角色成功")
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@ async def delete_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:role:delete"])),
|
||||
) -> JSONResponse:
|
||||
await RoleService.delete_role_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 删除角色成功: {id}")
|
||||
logger.info(f"删除角色成功: {id}")
|
||||
return SuccessResponse(msg="删除角色成功")
|
||||
|
||||
|
||||
@@ -82,7 +82,7 @@ async def batch_set_available_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:role:patch"])),
|
||||
) -> JSONResponse:
|
||||
await RoleService.set_role_available_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 批量修改角色状态成功: {data.ids}")
|
||||
logger.info(f"批量修改角色状态成功: {data.ids}")
|
||||
return SuccessResponse(msg="批量修改角色状态成功")
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ async def set_role_permission_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:role:permission"])),
|
||||
) -> JSONResponse:
|
||||
await RoleService.set_role_permission_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 设置角色权限成功: {data}")
|
||||
logger.info(f"设置角色权限成功: {data}")
|
||||
return SuccessResponse(msg="授权角色成功")
|
||||
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ async def get_current_user_info_controller(
|
||||
auth: AuthSchema = Depends(get_current_user)
|
||||
) -> JSONResponse:
|
||||
result_dict = await UserService.get_current_user_info_service(auth=auth)
|
||||
logger.info(f"{auth.user.name} 获取当前用户信息成功")
|
||||
logger.info(f"获取当前用户信息成功")
|
||||
return SuccessResponse(data=result_dict, msg='获取当前用户信息成功')
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ async def update_current_user_info_controller(
|
||||
auth: AuthSchema = Depends(get_current_user)
|
||||
) -> JSONResponse:
|
||||
result_dict = await UserService.update_current_user_info_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 更新当前用户基本信息成功: {result_dict}")
|
||||
logger.info(f"更新当前用户基本信息成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg='更新当前用户基本信息成功')
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ async def change_current_user_password_controller(
|
||||
auth: AuthSchema = Depends(get_current_user)
|
||||
) -> JSONResponse:
|
||||
result_dict = await UserService.change_user_password_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 修改密码成功: {result_dict}")
|
||||
logger.info(f"修改密码成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg='修改密码成功, 请重新登录')
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ async def get_obj_list_controller(
|
||||
) -> JSONResponse:
|
||||
result_dict_list = await UserService.get_user_list_service(search=search, auth=auth, order_by=page.order_by)
|
||||
result_dict = await PaginationService.get_page_obj(data_list= result_dict_list, page_no= page.page_no, page_size = page.page_size)
|
||||
logger.info(f"{auth.user.name} 查询用户成功")
|
||||
logger.info(f"查询用户成功")
|
||||
return SuccessResponse(data=result_dict, msg="查询用户成功")
|
||||
|
||||
|
||||
@@ -107,7 +107,7 @@ async def get_obj_detail_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:user:query"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await UserService.get_detail_by_id_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 获取用户详情成功 {id}")
|
||||
logger.info(f"获取用户详情成功 {id}")
|
||||
return SuccessResponse(data=result_dict, msg='获取用户详情成功')
|
||||
|
||||
|
||||
@@ -117,7 +117,7 @@ async def create_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:user:create"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await UserService.create_user_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 创建用户成功: {result_dict}")
|
||||
logger.info(f"创建用户成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="创建用户成功")
|
||||
|
||||
|
||||
@@ -127,7 +127,7 @@ async def update_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:user:update"])),
|
||||
) -> JSONResponse:
|
||||
result_dict = await UserService.update_user_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 修改用户成功: {result_dict}")
|
||||
logger.info(f"修改用户成功: {result_dict}")
|
||||
return SuccessResponse(data=result_dict, msg="修改用户成功")
|
||||
|
||||
|
||||
@@ -137,7 +137,7 @@ async def delete_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:user:delete"])),
|
||||
) -> JSONResponse:
|
||||
await UserService.delete_user_service(id=id, auth=auth)
|
||||
logger.info(f"{auth.user.name} 删除用户成功: {id}")
|
||||
logger.info(f"删除用户成功: {id}")
|
||||
return SuccessResponse(msg="删除用户成功")
|
||||
|
||||
|
||||
@@ -147,7 +147,7 @@ async def batch_set_available_obj_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:user:patch"])),
|
||||
) -> JSONResponse:
|
||||
await UserService.set_user_available_service(data=data, auth=auth)
|
||||
logger.info(f"{auth.user.name} 批量修改用户状态成功: {data.ids}")
|
||||
logger.info(f"批量修改用户状态成功: {data.ids}")
|
||||
return SuccessResponse(msg="批量修改用户状态成功")
|
||||
|
||||
|
||||
@@ -192,5 +192,5 @@ async def import_obj_list_controller(
|
||||
auth: AuthSchema = Depends(AuthPermission(permissions=["system:user:import"]))
|
||||
) -> JSONResponse:
|
||||
batch_import_result = await UserService.batch_import_user_service(file=file, auth=auth, update_support=True)
|
||||
logger.info(f"{auth.user.name} 导入用户成功: {batch_import_result}")
|
||||
logger.info(f"导入用户成功: {batch_import_result}")
|
||||
return SuccessResponse(data=batch_import_result, msg="导入用户成功")
|
||||
|
||||
Reference in New Issue
Block a user