From 7a2f38b75ebdf1b5d92d3879e89ad75500522b1a Mon Sep 17 00:00:00 2001 From: gtl <2949451835@qq.com> Date: Fri, 12 Apr 2024 17:50:25 +0800 Subject: [PATCH] =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E8=8F=9C=E5=8D=95=E7=B2=BE?= =?UTF-8?q?=E7=A1=AE=E6=90=9C=E7=B4=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SysMenuServiceImpl.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) 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 92a3b2c..bc32f9d 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 @@ -68,9 +68,31 @@ public class SysMenuServiceImpl extends ServiceImpl impl menu.getParams().put("userId", userId); menuList = menuMapper.selectMenuListByUserId(menu); } + if(menuList.size()==1){ + SysMenu sysMenu = menuList.get(0); + this.getMenuList(menuList,sysMenu); + List childList = this.getChildList(menuMapper.selectMenuList(null), sysMenu); + //找子节点 + menuList.addAll(childList); + } return menuList; } + /** + * 递归找祖结点 + * @param menuList 菜单集合 + * @param menu 底层菜单 + */ + public void getMenuList(List menuList,SysMenu menu){ + if(menu.getParentId().equals(0L)){ + return; + }else { + SysMenu sysMenu = this.selectMenuById(menu.getParentId()); + menuList.add(sysMenu); + getMenuList(menuList,sysMenu); + } + } + /** * 根据用户ID查询权限 *