suerprisePlus
2024-09-14 0cf13d9df73e8e9befa36236756ef02dd5f60e94
src/main/java/com/yb/service/AgentService.java
@@ -3,7 +3,7 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yb.config.XzConfig;
import com.yb.entity.ReqEntity;
import com.yb.entity.RelaEntity;
import com.yb.util.EntityHttpUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -48,6 +48,9 @@
    public String getAgentAroundPoi(String place, String type, int dis, String filed, String typeFiled) throws Exception {
        String item = xzService.getQueryFiled(place, filed, xzConfig.layerId, xzConfig.dbid, xzConfig.queryEntity);
        JSONObject obj = JSONObject.parseObject(item);
        if (obj == null) {
            return "";
        }
        Double lon = Double.parseDouble(obj.getString("lon"));
        Double lat = Double.parseDouble(obj.getString("lat"));
        String wkt = xzService.getWKt(lon, lat, dis);
@@ -57,6 +60,14 @@
    public HashMap<String, Object> getQueryRelationship(String place, String filed) throws Exception {
        String poiObj = xzService.getQueryEntity(place, filed, xzConfig.layerId, xzConfig.dbid, xzConfig.layerQuery);
       if(poiObj == null){
           HashMap<String, Object> hashMap = new HashMap<>();
           hashMap.put("msg","未查询到"+place+"相关数据");
           return hashMap;
       }
        HashMap<String, String> hashMap = new HashMap<String, String>();
        hashMap.put("token", xzConfig.token);
        hashMap.put("dbid", xzConfig.dbid);
@@ -103,6 +114,41 @@
        HashMap<String, Object> traiMap = new HashMap<>();
        traiMap.put("center", JSONObject.parseObject(poiObj));
        traiMap.put("positions", reArray);
        if (reArray.size() > 0) {
            ArrayList<RelaEntity> arrayList = new ArrayList<>();
            for (int i = 0; i < reArray.size(); i++) {
                String name = JSONObject.parseObject(reArray.getString(i)).getString(xzConfig.queryFiled);
                if (name.equals(place)) {
                    continue;
                }
                boolean contains = false;
                for (int j = 0; j < arrayList.size(); j++) {
                    RelaEntity firstElement = arrayList.get(j);
                    if (firstElement.getName().equals(name)) {
                        int flag = firstElement.getCount();
                        flag++;
                        firstElement.setCount(flag);
                        contains = true;
                    }
                }
                if (contains == false) {
                    RelaEntity relaEntity = new RelaEntity();
                    relaEntity.setName(name);
                    relaEntity.setCount(1);
                    arrayList.add(relaEntity);
                }
            }
            String markDown = "| 数据类型 | 数据量 |\n|------|------|\n";
            for (int i = 0; i < arrayList.size(); i++) {
                String name = arrayList.get(i).getName();
                int count =  arrayList.get(i).getCount();
                markDown += "| " + name + " | " + count + " |\n";
            }
            traiMap.put("msg",markDown);
        }
        System.out.println("rec getQueryRelationship:" + traiMap);
        return traiMap;