suerprisePlus
2024-12-17 d4e4ea6405756d495806a609e24ae85ebd7345ef
src/main/java/com/yb/service/AgentService.java
@@ -29,8 +29,8 @@
        return obj;
    }
    public String getAgentIntention(String url, String api, String msg) throws Exception {
        String http = url + api + "?message=" + msg;
    public String getAgentIntention(String url, String api, String msg, String sessionid, String libid) throws Exception {
        String http = url + api + "?session_id=" + sessionid + "&lib_id=" + libid + "&message=" + msg;
        System.out.println("rec getMessage:" + http);
        String obj = entityHttpUtil.getAgentMessage(http);
        System.out.println("rec getMessage:" + obj);
@@ -61,13 +61,11 @@
    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;
       }
        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);
@@ -80,15 +78,18 @@
        for (int i = 0; i < relationArry.size(); i++) {
            JSONObject relationtem = relationArry.getJSONObject(i);
            String name = relationtem.getString("name");
            if (name.equals("包含关系")) {
//            if (name.equals("包含")) {
//                itemObj = relationtem;
//            }
            if (name.contains(String.valueOf("包含"))) {
                itemObj = relationtem;
            }
        }
        String distanceUrl = xzConfig.relationDistinct + "?dbid=" + xzConfig.dbid + "&token=" + xzConfig.token + "&relationid=" + itemObj.getString("code");
        String relationDistance = entityHttpUtil.getMessage(distanceUrl);
        JSONObject distanceObj = JSONObject.parseObject(relationList);
        String distanceData = relattionObj.getString("data");
        System.out.println("rec getQueryRelationship:" + distanceData);
//        String distanceUrl = xzConfig.relationDistinct + "?dbid=" + xzConfig.dbid + "&token=" + xzConfig.token + "&relationid=" + itemObj.getString("code");
//        String relationDistance = entityHttpUtil.getMessage(distanceUrl);
//        JSONObject distanceObj = JSONObject.parseObject(relationList);
//        String distanceData = relattionObj.getString("data");
//        System.out.println("rec getQueryRelationship:" + distanceData);
        String relateddataeUrl = xzConfig.relationRelateddata + "?start=1&count=1000000&&a_like=&b_like=&dbid=" + xzConfig.dbid + "&token=" + xzConfig.token + "&relationid=" + itemObj.getString("code");
        String relationRelateddata = entityHttpUtil.getMessage(relateddataeUrl);
@@ -105,7 +106,7 @@
        HashMap<String, String> reMap = new HashMap<String, String>();
        reMap.put("token", xzConfig.token);
        reMap.put("dbid", xzConfig.dbid);
        reMap.put("businessids", list.toString());
        reMap.put("ids", list.toString());
        reMap.put("layerid", xzConfig.layerId);
        reMap.put("querylatest", "true");
        String reMapList = entityHttpUtil.getPostMessage(xzConfig.layerQuery, reMap);
@@ -118,38 +119,44 @@
            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)) {
                String name = JSONObject.parseObject(reArray.getString(i)).getString(xzConfig.typeFiled);
//             System.out.println("rec getQueryRelationship:" + name);
                if (name == null || name.isEmpty()) {
                    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;
                } else {
                    if (name.equals(place)) {
                        continue;
                    }
                }
                if (contains == false) {
                    RelaEntity relaEntity = new RelaEntity();
                    relaEntity.setName(name);
                    relaEntity.setCount(1);
                    arrayList.add(relaEntity);
                    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();
                int count = arrayList.get(i).getCount();
                markDown += "| " + name + " | " + count + " |\n";
            }
            traiMap.put("msg",markDown);
            traiMap.put("msg", markDown);
        }
        System.out.println("rec getQueryRelationship:" + traiMap);
//        System.out.println("rec traiMap:" + traiMap);
        return traiMap;
    }