linwe
2023-12-23 55d677758efadb6d42e6d4e595cecc2c50c20d5a
src/main/java/org/springblade/modules/system/service/impl/MenuServiceImpl.java
@@ -110,19 +110,19 @@
   @Override
   public List<MenuVO> routes(String roleId, Long topMenuId, Integer labelType) {
   public List<MenuVO> routes(String roleId, Long topMenuId, Integer labelType,Integer menuType) {
      if (StringUtil.isBlank(roleId)) {
         return null;
      }
      List<Menu> allMenus = baseMapper.allMenu();
      List<Menu> allMenus = baseMapper.selectList(Wrappers.<Menu>lambdaQuery().eq(Menu::getCategory,1).eq(Menu::getMenuType,menuType));
      List<Menu> roleMenus;
      // 超级管理员并且不是顶部菜单请求则返回全部菜单
      if (AuthUtil.isAdministrator() && Func.isEmpty(topMenuId)) {
         roleMenus = allMenus.stream().filter(a -> a.getMenuType().equals(0)).collect(Collectors.toList());
         roleMenus = allMenus;
      }
      // 非超级管理员并且不是顶部菜单请求则返回对应角色权限菜单
      else if (!AuthUtil.isAdministrator() && Func.isEmpty(topMenuId)) {
         roleMenus = tenantPackageMenu(baseMapper.roleMenuByRoleId(Func.toLongList(roleId)));
         roleMenus = tenantPackageMenu(baseMapper.roleMenuByRoleId(Func.toLongList(roleId), menuType));
         UserHouseLabelDTO userHouseLabelDTO = new UserHouseLabelDTO();
         userHouseLabelDTO.setUserId(AuthUtil.getUserId());
         userHouseLabelDTO.setLableType(labelType);
@@ -140,9 +140,6 @@
                  }
               } else {
                  if (next.getName().trim().equals("标签报事")) {
                     iterator.remove();
                  }
                  if (next.getName().trim().equals("取保候审")) {
                     iterator.remove();
                  }
                  if (next.getName().trim().equals("打金店")) {
@@ -167,7 +164,7 @@
      // 顶部菜单请求返回对应角色权限菜单
      else {
         // 角色配置对应菜单
         List<Menu> roleIdMenus = baseMapper.roleMenuByRoleId(Func.toLongList(roleId));
         List<Menu> roleIdMenus = baseMapper.roleMenuByRoleId(Func.toLongList(roleId),menuType);
         // 反向递归角色菜单所有父级
         List<Menu> routes = new LinkedList<>(roleIdMenus);
         roleIdMenus.forEach(roleMenu -> recursion(allMenus, routes, roleMenu));