From 3e9a6da99aae968123ee7bca352fc08becd7f1f2 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期四, 29 八月 2024 17:29:21 +0800
Subject: [PATCH] 工单过程图接口更换

---
 ycl-server/src/main/java/com/ycl/feign/HkApiUtil.java |   44 ++++++++++++++++++++++++++++++++------------
 1 files changed, 32 insertions(+), 12 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/feign/HkApiUtil.java b/ycl-server/src/main/java/com/ycl/feign/HkApiUtil.java
index 4e1a0ec..cc344d3 100644
--- a/ycl-server/src/main/java/com/ycl/feign/HkApiUtil.java
+++ b/ycl-server/src/main/java/com/ycl/feign/HkApiUtil.java
@@ -4,15 +4,19 @@
 import com.alibaba.fastjson2.JSONObject;
 import com.hikvision.artemis.sdk.ArtemisHttpUtil;
 import com.hikvision.artemis.sdk.config.ArtemisConfig;
+import com.ycl.platform.domain.param.HK.BaseParam;
 import com.ycl.platform.domain.param.HK.FaceDetectParam;
 import com.ycl.utils.DateUtils;
 import constant.ApiConstants;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.util.CollectionUtils;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.jar.JarEntry;
 
 /**
  * @author锛歺p
@@ -21,7 +25,12 @@
 @Slf4j
 public class HkApiUtil {
 
-
+    @Value("${HK.host}")
+    public static String host;
+    @Value("${HK.appKey}")
+    public static String appKey;
+    @Value("${HK.appSecret}")
+    public static String appSecret;
     /**
      * 璋冪敤娴峰悍鎺ュ彛
      *
@@ -30,12 +39,12 @@
      * @param resultType 鍝嶅簲缁撴灉鎺ユ敹绫�
      * @return 璋冪敤缁撴灉
      */
-    public static <T> List<T> sendAPI(String apiUrl, Object params, Class<T> resultType) {
+    public static <T> List<T> sendAPI(String apiUrl, BaseParam params, Class<T> resultType) {
 
         // STEP1锛氳缃钩鍙板弬鏁帮紝鏍规嵁瀹為檯鎯呭喌,璁剧疆host appkey appsecret 涓変釜鍙傛暟.
-        ArtemisConfig.host = "51.92.65.49"; // 骞冲彴鐨刬p绔彛
-        ArtemisConfig.appKey = "29555942";  // 瀵嗛挜appkey
-        ArtemisConfig.appSecret = "t9U7tCplCyYHzQPPL7cH";// 瀵嗛挜appSecret
+        ArtemisConfig.host = host; // 骞冲彴鐨刬p绔彛
+        ArtemisConfig.appKey = appKey;  // 瀵嗛挜appkey
+        ArtemisConfig.appSecret = appSecret;// 瀵嗛挜appSecret
 
         // STEP2锛氳缃甇penAPI鎺ュ彛鐨勪笂涓嬫枃
         final String ARTEMIS_PATH = "/artemis";
@@ -54,22 +63,33 @@
         // STEP5锛氱粍瑁呰姹傚弬鏁�
         String body = JSON.toJSONString(params);
         log.info("璇锋眰鍙傛暟:{}",body);
-
         // STEP6锛氳皟鐢ㄦ帴鍙�
         String result = null;// post璇锋眰application/json绫诲瀷鍙傛暟
-        try {
+        List<T> dataList = new ArrayList<>();
+        for (int i = 0; i < 10; i++) {
             result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, contentType , null);
-        } catch (Exception e) {
-            log.error("鎺ュ彛锛氥�恵}銆戯紝璋冪敤澶辫触");
-            e.printStackTrace();
+            JSONObject jsonObject = JSONObject.parseObject(result);
+            if(jsonObject.getString("code") == null || !ApiConstants.HKSuccessCode.equals(jsonObject.getString("code"))){
+                log.error("璇锋眰澶辫触{}",result);
+                dataList = null;
+                break;
+            }
+            List<T> resultList = HkApiUtil.getDataList(JSONObject.parseObject(result), resultType);
+            if(CollectionUtils.isEmpty(resultList) || resultList.size()<ApiConstants.HKPageSize) {
+                dataList.addAll(resultList);
+                break;
+            }else {
+                dataList.addAll(resultList);
+                params.setPageNo(params.getPageNo()+1);
+            }
         }
-        return HkApiUtil.getDataList(JSONObject.parseObject(result), resultType);
+
+        return dataList;
     }
 
     //瑙f瀽鏁版嵁
     private static <T> List<T> getDataList(JSONObject jsonObject, Class<T> resultClass) {
         if (jsonObject != null && ApiConstants.HKSuccessCode.equals(jsonObject.getString("code"))) {
-            log.info("鏁版嵁鏍煎紡"+jsonObject);
             JSONObject data = jsonObject.getJSONObject("data");
             if (data == null) {
                 return null;

--
Gitblit v1.8.0