shenyijian
2024-06-21 f20611265f7d34fd4fbcdfdaff6cb9cccd0b25fc
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/service/impl/HkServiceImpl.java
@@ -8,6 +8,7 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.apache.logging.log4j.util.Strings;
import org.springblade.core.mp.support.Query;
import org.springframework.stereotype.Service;
@@ -179,11 +180,11 @@
    * 获取根节点区域信息
    * @param hk
    */
   private String getRootRegionId(HkVO hk) {
   public String getRootRegionId(HkVO hk) {
      // 组装请求参数
      JSONObject jsonBody = new JSONObject();
      String body = jsonBody.toJSONString();
      String result = GetCameraUtils.common(hk.getType(),regionsRootUrls, body);
      String result = GetCameraUtils.common(null==hk.getType()?1:hk.getType(),regionsRootUrls, body);
      // 数据处理
      JSONObject jsonObject = JSONObject.parseObject(result);
      JSONObject data = (JSONObject) jsonObject.get("data");
@@ -191,4 +192,52 @@
      // 返回
      return indexCode;
   }
   /**
    * 查询区域列表v2
    * @param hk
    */
   public String regionNodesByParams(HkVO hk) {
      // 先按地市查询对应的区域code
      String parentIndexCode = getIndexCodeByRegionName(hk,hk.getCityName(),null);
      if (!Strings.isBlank(parentIndexCode)) {
         return getIndexCodeByRegionName(hk,hk.getRegionName(),parentIndexCode);
      }
      // 返回
      return null;
   }
   /**
    * 按区域名称查询对应的区域code
    * @param hk
    * @param regionName
    * @param parentIndexCode
    * @return
    */
   private String getIndexCodeByRegionName(HkVO hk,String regionName,String parentIndexCode) {
      String indexCode = "";
      // 组装请求参数
      JSONObject jsonBody = new JSONObject();
      jsonBody.put("resourceType", "region");
      jsonBody.put("regionName", regionName);
      if (!Strings.isBlank(parentIndexCode)){
         jsonBody.put("parentIndexCodes", new ArrayList<>(){{
            add(parentIndexCode);
         }});
      }
      jsonBody.put("pageNo", 1);
      jsonBody.put("pageSize", 10);
      String body = jsonBody.toJSONString();
      String result = GetCameraUtils.common(null==hk.getType()?1:hk.getType(),regionNodesByParamsURLs, body);
      // 数据处理
      JSONObject jsonObject = JSONObject.parseObject(result);
      JSONObject data = jsonObject.getJSONObject("data");
      JSONArray list = data.getJSONArray("list");
      if (list.size()>0){
         indexCode = list.getJSONObject(0).getString("indexCode");
      }
      // 返回
      return indexCode;
   }
}