feat(system): 取消角色superadmin能看到所有菜单的约定,改为实际配置实际显示

This commit is contained in:
2026-04-14 18:58:26 +08:00
parent 07d07c8f5f
commit 9384b2f502
6 changed files with 222 additions and 14 deletions

View File

@@ -223,11 +223,7 @@ public class PermissionServiceImpl implements PermissionService {
return Collections.emptySet();
}
// 如果是管理员的情况下,获取全部菜单编号
if (roleService.hasAnySuperAdmin(roleIds)) {
return convertSet(menuService.filterDisableMenus(menuService.getMenuList()), MenuDO::getId);
}
// 如果是非管理员的情况下,仅返回当前仍然有效的菜单,并补齐其父链
// 统一按角色实际授权返回当前仍然有效的菜单,并补齐其父链
Set<Long> menuIds = convertSet(roleMenuMapper.selectListByRoleId(roleIds), RoleMenuDO::getMenuId);
List<MenuDO> menus = menuService.filterDisableMenus(menuService.getMenuList(menuIds));
return expandMenuIdsWithAncestors(convertSet(menus, MenuDO::getId));

View File

@@ -7,12 +7,12 @@ spring:
username: # Nacos 账号
password: # Nacos 密码
discovery: # 【配置中心】配置项
namespace: 1e0fcd92-49b4-4cda-b531-828c7d36fef5 # 命名空间。这里使用 dev 开发环境
namespace: dev # 命名空间。这里使用 dev 开发环境
group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
metadata:
version: 1.0.0 # 服务实例的版本号,可用于灰度发布
config: # 【注册中心】配置项
namespace: 1e0fcd92-49b4-4cda-b531-828c7d36fef5 # 命名空间。这里使用 dev 开发环境
namespace: dev # 命名空间。这里使用 dev 开发环境
group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
#################### 数据库相关配置 ####################

View File

@@ -6,12 +6,12 @@ spring:
username: # Nacos 账号
password: # Nacos 密码
discovery: # 【配置中心】配置项
namespace: 1e0fcd92-49b4-4cda-b531-828c7d36fef5 # 命名空间。这里使用 dev 开发环境
namespace: dev # 命名空间。这里使用 dev 开发环境
group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
metadata:
version: 1.0.0 # 服务实例的版本号,可用于灰度发布
config: # 【注册中心】配置项
namespace: 1e0fcd92-49b4-4cda-b531-828c7d36fef5 # 命名空间。这里使用 dev 开发环境
namespace: dev # 命名空间。这里使用 dev 开发环境
group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
#################### 数据库相关配置 ####################
@@ -63,7 +63,7 @@ spring:
data:
redis:
host: 127.0.0.1 # 地址
port: 6379 # 端口
port: 16379 # 端口
database: 1 # 数据库索引
# password: njcnpqs # 密码,建议生产环境开启