From 140be610032a7b92ac0a7627d10353dca81ac608 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Sat, 08 Feb 2020 14:49:46 +0800
Subject: [PATCH] 根据用户权限加载菜单数据树形结构
---
ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java | 18 ++++++++++++++----
1 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java
index 735faab..b8d8603 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java
@@ -15,6 +15,7 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.web.domain.TreeSelect;
import com.ruoyi.project.system.domain.SysMenu;
+import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.domain.vo.MetaVo;
import com.ruoyi.project.system.domain.vo.RouterVo;
import com.ruoyi.project.system.mapper.SysMenuMapper;
@@ -44,9 +45,19 @@
* @return 菜单列表
*/
@Override
- public List<SysMenu> selectMenuList(SysMenu menu)
+ public List<SysMenu> selectMenuList(SysMenu menu, Long userId)
{
- List<SysMenu> menuList = menuMapper.selectMenuList(menu);
+ List<SysMenu> menuList = null;
+ // 管理员显示所有菜单信息
+ if (SysUser.isAdmin(userId))
+ {
+ menuList = menuMapper.selectMenuList(menu);
+ }
+ else
+ {
+ menu.getParams().put("userId", userId);
+ menuList = menuMapper.selectMenuListByUserId(menu);
+ }
return menuList;
}
@@ -116,11 +127,10 @@
for (SysMenu menu : menus)
{
RouterVo router = new RouterVo();
- router.setName(menu.getMenuName());
+ router.setName(StringUtils.capitalize(menu.getPath()));
router.setPath(getRouterPath(menu));
router.setComponent(StringUtils.isEmpty(menu.getComponent()) ? "Layout" : menu.getComponent());
router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon()));
- router.setName(menu.getMenuName());
List<SysMenu> cMenus = menu.getChildren();
if (!cMenus.isEmpty() && cMenus.size() > 0 && "M".equals(menu.getMenuType()))
{
--
Gitblit v1.9.2