linwe
2024-07-19 edaa688bea08de0c3586583848dde2373ba56e3e
src/main/java/org/springblade/modules/system/service/impl/MenuServiceImpl.java
@@ -110,8 +110,18 @@
   public static final List<Integer> list2 = Arrays.asList(1, 11, null);
   /**
    *
    * @param roleId
    * @param topMenuId
    * @param labelType
    * @param menuType
    * @param roleName
    * @param houseCode
    * @return
    */
   @Override
   public List<MenuVO> routes(String roleId, Long topMenuId, Integer labelType, Integer menuType, String roleName) {
   public List<MenuVO> routes(String roleId, Long topMenuId, Integer labelType, Integer menuType, String roleName,String houseCode) {
      if (StringUtil.isBlank(roleId)) {
         return null;
      }
@@ -126,7 +136,7 @@
         roleMenus = tenantPackageMenu(baseMapper.roleMenuByRoleId(Func.toLongList(roleId), menuType));
         // 1:居民,居民需要通过人的标签来显示取保候审
         if (CommonConstant.RESIDENT.equals(roleName)) {
            extracted(labelType, roleMenus);
             extracted(labelType, roleMenus,houseCode);
         }
      }
      // 顶部菜单请求返回对应角色权限菜单
@@ -153,10 +163,11 @@
    * @param roleMenus
    * @param labelType
    */
   private void extracted(Integer labelType, List<Menu> roleMenus) {
   private void extracted(Integer labelType, List<Menu> roleMenus,String houseCode) {
      UserHouseLabelDTO userHouseLabelDTO = new UserHouseLabelDTO();
      userHouseLabelDTO.setUserId(AuthUtil.getUserId());
      userHouseLabelDTO.setLableType(labelType);
      userHouseLabelDTO.setHouseCode(houseCode);
      List<Integer> integers = iUserHouseLabelService.selectUserLabelList(userHouseLabelDTO);
      Iterator<Menu> iterator = roleMenus.iterator();
      while (iterator.hasNext()) {
@@ -171,12 +182,12 @@
                  // 场所的时候,删除取保候审
               } else if (CommonConstant.NUMBER_TWO.equals(labelType)) {
                  if (next.getName().trim().equals("取保候审")) {
                  if (next.getName().trim().equals("取保监居")) {
                     iterator.remove();
                  }
               }
            } else {
               if (next.getName().trim().equals("取保候审")) {
               if (next.getName().trim().equals("取保监居")) {
                  iterator.remove();
               }
            }
@@ -353,7 +364,9 @@
      } else {
         menuQueryWrapper.ne(Menu::getId, menu.getId()).eq(Menu::getIsDeleted, 0).and(
            wrapper -> wrapper.eq(Menu::getCode, menu.getCode()).or(
               o -> o.eq(Menu::getName, menu.getName()).eq(Menu::getCategory, MENU_CATEGORY)
               o -> o.eq(Menu::getName, menu.getName())
                  .eq(Menu::getCategory, MENU_CATEGORY)
                  .eq(Menu::getMenuType, menu.getMenuType())
            )
         );
      }