From 58d903ac6d13322989d67d592867d1fa1870ee48 Mon Sep 17 00:00:00 2001 From: yaoxin <1752800946@qq.com> Date: Fri, 12 Apr 2024 16:47:51 +0800 Subject: [PATCH] =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E8=8F=9C=E5=8D=95=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E4=BC=98=E5=8C=962?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/muyu/system/mapper/SysMenuMapper.java | 1 + .../service/impl/SysMenuServiceImpl.java | 26 ++++++++++++++++++- .../resources/mapper/system/SysMenuMapper.xml | 11 ++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysMenuMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysMenuMapper.java index 121e905..3740c78 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysMenuMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysMenuMapper.java @@ -23,6 +23,7 @@ public interface SysMenuMapper extends BaseMapper { public List selectMenuList (SysMenu menu); public List selectSysMenuList (@Param("longs") List longs); + public List selectSysChdMenuList (@Param("longs") List longs); /** * 根据用户所有权限 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/service/impl/SysMenuServiceImpl.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/service/impl/SysMenuServiceImpl.java index 3b11298..bd33b77 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/service/impl/SysMenuServiceImpl.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/service/impl/SysMenuServiceImpl.java @@ -68,6 +68,22 @@ public class SysMenuServiceImpl extends ServiceImpl impl return sysMenus; } + public List selectSysChdMenuList(List menuList){ + List longs = menuList.stream() + .map(menu -> menu.getMenuId()) + .toList(); + List sysMenus = menuMapper.selectSysChdMenuList(longs); + if (sysMenus!=null && sysMenus.size()!=0){ + List sysMenus1 = selectSysMenuList(sysMenus); + if (sysMenus1 != null){ + sysMenus.addAll(sysMenus1); + } + }else{ + return null; + } + return sysMenus; + } + /** * 查询系统菜单列表 * @@ -81,7 +97,15 @@ public class SysMenuServiceImpl extends ServiceImpl impl // 管理员显示所有菜单信息 if (SysUser.isAdmin(userId)) { menuList = menuMapper.selectMenuList(menu); - menuList.addAll(selectSysMenuList(menuList)); + List sysMenus1 = selectSysMenuList(menuList); + if (sysMenus1!=null && sysMenus1.size()!=0){ + menuList.addAll(sysMenus1); + } + List sysMenus = selectSysChdMenuList(menuMapper.selectMenuList(menu)); + if (sysMenus!=null && sysMenus.size()!=0){ + menuList.addAll(sysMenus); + } + } else { menu.getParams().put("userId", userId); menuList = menuMapper.selectMenuListByUserId(menu); diff --git a/muyu-modules/muyu-system/src/main/resources/mapper/system/SysMenuMapper.xml b/muyu-modules/muyu-system/src/main/resources/mapper/system/SysMenuMapper.xml index bcd87d8..804b232 100644 --- a/muyu-modules/muyu-system/src/main/resources/mapper/system/SysMenuMapper.xml +++ b/muyu-modules/muyu-system/src/main/resources/mapper/system/SysMenuMapper.xml @@ -196,6 +196,17 @@ order by parent_id, order_num + update sys_menu