From 7373a58dfb369d4ca2c39e4e48b598952f094583 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 14 Jul 2025 10:59:38 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E6=9D=83=E9=99=90=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/mapper/SysMenuMapper.java | 18 ++++++++++++------ .../service/impl/SysMenuServiceImpl.java | 18 ++---------------- 2 files changed, 14 insertions(+), 22 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java index 1af2872e7..11a62ebcc 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java @@ -6,7 +6,9 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.system.domain.SysMenu; import org.dromara.system.domain.vo.SysMenuVo; +import java.util.HashSet; import java.util.List; +import java.util.Set; /** * 菜单表 数据层 @@ -75,12 +77,14 @@ public interface SysMenuMapper extends BaseMapperPlus { * @param userId 用户ID * @return 权限列表 */ - default List selectMenuPermsByUserId(Long userId) { - return this.selectObjs( + default Set selectMenuPermsByUserId(Long userId) { + return new HashSet<>(this.selectObjs( new LambdaQueryWrapper() .select(SysMenu::getPerms) .inSql(SysMenu::getMenuId, this.buildMenuByUserSql(userId)) - ); + .isNotNull(SysMenu::getPerms) + .ne(SysMenu::getPerms, "") + )); } /** @@ -89,12 +93,14 @@ public interface SysMenuMapper extends BaseMapperPlus { * @param roleId 角色ID * @return 权限列表 */ - default List selectMenuPermsByRoleId(Long roleId) { - return this.selectObjs( + default Set selectMenuPermsByRoleId(Long roleId) { + return new HashSet<>(this.selectObjs( new LambdaQueryWrapper() .select(SysMenu::getPerms) .inSql(SysMenu::getMenuId, this.buildMenuByRoleSql(roleId)) - ); + .isNotNull(SysMenu::getPerms) + .ne(SysMenu::getPerms, "") + )); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java index 43bf505bf..efe9029f8 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java @@ -90,14 +90,7 @@ public class SysMenuServiceImpl implements ISysMenuService { */ @Override public Set selectMenuPermsByUserId(Long userId) { - List perms = baseMapper.selectMenuPermsByUserId(userId); - Set permsSet = new HashSet<>(); - for (String perm : perms) { - if (StringUtils.isNotEmpty(perm)) { - permsSet.addAll(StringUtils.splitList(perm.trim())); - } - } - return permsSet; + return baseMapper.selectMenuPermsByUserId(userId); } /** @@ -108,14 +101,7 @@ public class SysMenuServiceImpl implements ISysMenuService { */ @Override public Set selectMenuPermsByRoleId(Long roleId) { - List perms = baseMapper.selectMenuPermsByRoleId(roleId); - Set permsSet = new HashSet<>(); - for (String perm : perms) { - if (StringUtils.isNotEmpty(perm)) { - permsSet.addAll(StringUtils.splitList(perm.trim())); - } - } - return permsSet; + return baseMapper.selectMenuPermsByRoleId(roleId); } /**