from fastapi import APIRouter, Request from core.constant import PermissionName from core.decorators import Authorize, OperationLog from core.enums import BusinessTypeEnum from domain.dtos import PageDto, SysConfigUpdateDto from domain.services import SysConfigService, get_config_service config_router = APIRouter(prefix="/config", tags=["系统配置管理"]) @config_router.post("/page", summary="查询配置") @Authorize(PermissionName.SYS_CONFIG_QUERY) async def get_configs_page( request: Request, config_service: SysConfigService = get_config_service(), ): page_dict = await request.json() page_dto = PageDto(**page_dict) configs = await config_service.get_page_list(page_dto) return configs @config_router.post("/update", summary="更新配置") @Authorize(PermissionName.SYS_USER_UPDATE) @OperationLog(title="更新配置", business_type=BusinessTypeEnum.UPDATE) async def update_user( request: Request, config_service: SysConfigService = get_config_service(), ): user_data = await request.json() dto = SysConfigUpdateDto(**user_data) updated_user = await config_service.update(dto) return updated_user