From 5d54693b27dbba9d6a757998e82882593f71156b Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Fri, 09 Jan 2026 11:19:02 +0800
Subject: [PATCH] 添加菜单路由地址和名称的校验规则
---
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysConfigController.java | 46 ++++++++++++++++++++++++++++------------------
1 files changed, 28 insertions(+), 18 deletions(-)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysConfigController.java
index 37c633d..9b7380e 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysConfigController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysConfigController.java
@@ -1,10 +1,8 @@
package com.ruoyi.system.controller;
-import java.io.IOException;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
@@ -14,13 +12,13 @@
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
-import com.ruoyi.common.core.constant.UserConstants;
import com.ruoyi.common.core.utils.poi.ExcelUtil;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
+import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.service.ISysConfigService;
@@ -40,7 +38,7 @@
/**
* 获取参数配置列表
*/
- @PreAuthorize("@ss.hasPermi('system:config:list')")
+ @RequiresPermissions("system:config:list")
@GetMapping("/list")
public TableDataInfo list(SysConfig config)
{
@@ -48,11 +46,11 @@
List<SysConfig> list = configService.selectConfigList(config);
return getDataTable(list);
}
-
+
@Log(title = "参数管理", businessType = BusinessType.EXPORT)
- @PreAuthorize("@ss.hasPermi('system:config:export')")
+ @RequiresPermissions("system:config:export")
@PostMapping("/export")
- public void export(HttpServletResponse response, SysConfig config) throws IOException
+ public void export(HttpServletResponse response, SysConfig config)
{
List<SysConfig> list = configService.selectConfigList(config);
ExcelUtil<SysConfig> util = new ExcelUtil<SysConfig>(SysConfig.class);
@@ -62,11 +60,10 @@
/**
* 根据参数编号获取详细信息
*/
- @PreAuthorize("@ss.hasRole('admin')")
@GetMapping(value = "/{configId}")
public AjaxResult getInfo(@PathVariable Long configId)
{
- return AjaxResult.success(configService.selectConfigById(configId));
+ return success(configService.selectConfigById(configId));
}
/**
@@ -75,20 +72,20 @@
@GetMapping(value = "/configKey/{configKey}")
public AjaxResult getConfigKey(@PathVariable String configKey)
{
- return AjaxResult.success(configService.selectConfigByKey(configKey));
+ return success(configService.selectConfigByKey(configKey));
}
/**
* 新增参数配置
*/
- @PreAuthorize("@ss.hasPermi('system:config:add')")
+ @RequiresPermissions("system:config:add")
@Log(title = "参数管理", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@Validated @RequestBody SysConfig config)
{
- if (UserConstants.NOT_UNIQUE.equals(configService.checkConfigKeyUnique(config)))
+ if (!configService.checkConfigKeyUnique(config))
{
- return AjaxResult.error("新增参数'" + config.getConfigName() + "'失败,参数键名已存在");
+ return error("新增参数'" + config.getConfigName() + "'失败,参数键名已存在");
}
config.setCreateBy(SecurityUtils.getUsername());
return toAjax(configService.insertConfig(config));
@@ -97,14 +94,14 @@
/**
* 修改参数配置
*/
- @PreAuthorize("@ss.hasPermi('system:config:edit')")
+ @RequiresPermissions("system:config:edit")
@Log(title = "参数管理", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@Validated @RequestBody SysConfig config)
{
- if (UserConstants.NOT_UNIQUE.equals(configService.checkConfigKeyUnique(config)))
+ if (!configService.checkConfigKeyUnique(config))
{
- return AjaxResult.error("修改参数'" + config.getConfigName() + "'失败,参数键名已存在");
+ return error("修改参数'" + config.getConfigName() + "'失败,参数键名已存在");
}
config.setUpdateBy(SecurityUtils.getUsername());
return toAjax(configService.updateConfig(config));
@@ -113,11 +110,24 @@
/**
* 删除参数配置
*/
- @PreAuthorize("@ss.hasPermi('system:config:remove')")
+ @RequiresPermissions("system:config:remove")
@Log(title = "参数管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{configIds}")
public AjaxResult remove(@PathVariable Long[] configIds)
{
- return toAjax(configService.deleteConfigByIds(configIds));
+ configService.deleteConfigByIds(configIds);
+ return success();
+ }
+
+ /**
+ * 刷新参数缓存
+ */
+ @RequiresPermissions("system:config:remove")
+ @Log(title = "参数管理", businessType = BusinessType.CLEAN)
+ @DeleteMapping("/refreshCache")
+ public AjaxResult refreshCache()
+ {
+ configService.resetConfigCache();
+ return success();
}
}
--
Gitblit v1.9.3