zhongrj
2024-03-16 aca33b1ff34ea0f2db3290d4c0b5d898f66de108
src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
@@ -21,6 +21,7 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.logging.log4j.util.Strings;
import org.springblade.common.cache.SysCache;
import org.springblade.common.constant.DictConstant;
import org.springblade.common.node.TreeStringNode;
import org.springblade.common.param.CommonParamSet;
@@ -63,6 +64,8 @@
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
/**
@@ -142,7 +145,7 @@
               }
               if (roleName.equals("民警")) {
                  // 查询对应的社区编号
                  communityList = policeAffairsGridService.getCommunityCodeListByUserId(AuthUtil.getUserId());
                  communityList = SysCache.getPoliceRegionChildCodesByDeptId(AuthUtil.getDeptId());
               }
            }
            // 查询街道
@@ -536,8 +539,7 @@
         });
         // 排序
         sortUnit(tempList, list);
//         List<FuncNode> sortList = tempList.stream().sorted(Comparator.comparing(X -> X.getUnitName())).collect(Collectors.toList());
//         list.addAll(sortList);
      }
   }
@@ -564,7 +566,11 @@
            } else if (funcNode.getUnitName().contains("六")) {
               funcNode.setSort(6);
            } else {
               funcNode.setSort(1);
               if (!containsNumber(funcNode.getUnitName())) {
                  funcNode.setSort(1);
               }else {
                  funcNode.setSort(getNumber(funcNode.getUnitName()));
               }
            }
         }
         // 排序
@@ -574,6 +580,32 @@
   }
   /**
    * 判断是否包含数字
    * @param str
    * @return
    */
   public static boolean containsNumber(String str) {
      Pattern pattern = Pattern.compile(".*\\d+.*");
      Matcher matcher = pattern.matcher(str);
      return matcher.matches();
   }
   /**
    * 取出字符串中的数字
    * @param str
    * @return
    */
   public static int getNumber(String str){
      StringBuilder sb = new StringBuilder();
      for (char c : str.toCharArray()) {
         if (Character.isDigit(c)) {
            sb.append(c);
         }
      }
      return Integer.parseInt(sb.toString());
   }
   /**
    * 查询房屋及出租详情信息
    *
    * @param code 门牌地址编号