From f8ad7ea3ce00e35e8bd9bb17258153714f03d711 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Sat, 18 Mar 2023 10:45:29 +0800
Subject: [PATCH] 支持自定义隐藏属性列过滤子对象
---
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java | 37 +++++++++++++++++++++++++++----------
1 files changed, 27 insertions(+), 10 deletions(-)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
index 79a0f7e..f29df9e 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
@@ -101,6 +101,27 @@
}
/**
+ * 根据角色ID查询权限
+ *
+ * @param roleId 角色ID
+ * @return 权限列表
+ */
+ @Override
+ public Set<String> selectMenuPermsByRoleId(Long roleId)
+ {
+ List<String> perms = menuMapper.selectMenuPermsByRoleId(roleId);
+ Set<String> permsSet = new HashSet<>();
+ for (String perm : perms)
+ {
+ if (StringUtils.isNotEmpty(perm))
+ {
+ permsSet.addAll(Arrays.asList(perm.trim().split(",")));
+ }
+ }
+ return permsSet;
+ }
+
+ /**
* 根据用户ID查询菜单
*
* @param userId 用户名称
@@ -202,11 +223,7 @@
public List<SysMenu> buildMenuTree(List<SysMenu> menus)
{
List<SysMenu> returnList = new ArrayList<SysMenu>();
- List<Long> tempList = new ArrayList<Long>();
- for (SysMenu dept : menus)
- {
- tempList.add(dept.getMenuId());
- }
+ List<Long> tempList = menus.stream().map(SysMenu::getMenuId).collect(Collectors.toList());
for (Iterator<SysMenu> iterator = menus.iterator(); iterator.hasNext();)
{
SysMenu menu = (SysMenu) iterator.next();
@@ -259,7 +276,7 @@
public boolean hasChildByMenuId(Long menuId)
{
int result = menuMapper.hasChildByMenuId(menuId);
- return result > 0 ? true : false;
+ return result > 0;
}
/**
@@ -272,7 +289,7 @@
public boolean checkMenuExistRole(Long menuId)
{
int result = roleMenuMapper.checkMenuExistRole(menuId);
- return result > 0 ? true : false;
+ return result > 0;
}
/**
@@ -318,7 +335,7 @@
* @return 结果
*/
@Override
- public String checkMenuNameUnique(SysMenu menu)
+ public boolean checkMenuNameUnique(SysMenu menu)
{
Long menuId = StringUtils.isNull(menu.getMenuId()) ? -1L : menu.getMenuId();
SysMenu info = menuMapper.checkMenuNameUnique(menu.getMenuName(), menu.getParentId());
@@ -508,7 +525,7 @@
*/
public String innerLinkReplaceEach(String path)
{
- return StringUtils.replaceEach(path, new String[] { Constants.HTTP, Constants.HTTPS },
- new String[] { "", "" });
+ return StringUtils.replaceEach(path, new String[] { Constants.HTTP, Constants.HTTPS, Constants.WWW, "." },
+ new String[] { "", "", "", "/" });
}
}
--
Gitblit v1.9.3