From 3b0516a2959e25576e4f3fda697a3b025d06c8c9 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期二, 24 六月 2025 14:09:07 +0800
Subject: [PATCH] 每日录像可用指标添加日志,修改大屏为查看当前月平均

---
 ycl-server/src/main/java/com/ycl/feign/HkApiUtil.java |   70 +++++++++++++++++++++++++++++++---
 1 files changed, 63 insertions(+), 7 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 cb5ae8f..32685ba 100644
--- a/ycl-server/src/main/java/com/ycl/feign/HkApiUtil.java
+++ b/ycl-server/src/main/java/com/ycl/feign/HkApiUtil.java
@@ -2,15 +2,20 @@
 
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
+import com.fasterxml.jackson.databind.ObjectMapper;
 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 com.ycl.utils.bean.BeanUtils;
 import constant.ApiConstants;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.util.CollectionUtils;
 
+import java.lang.reflect.Field;
+import java.lang.reflect.Modifier;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -24,20 +29,20 @@
 @Slf4j
 public class HkApiUtil {
 
+
     /**
-     * 璋冪敤娴峰悍鎺ュ彛
+     * 璋冪敤娴峰悍鎺ュ彛 鍩虹鏁版嵁骞冲彴 Post璇锋眰
      *
      * @param apiUrl 鎺ュ彛鍦板潃锛�/api/dqd/service/rs/v2/data/faceDetect/query
      * @param params 璇锋眰鍙傛暟
      * @param resultType 鍝嶅簲缁撴灉鎺ユ敹绫�
      * @return 璋冪敤缁撴灉
      */
-    public static <T> List<T> sendAPI(String apiUrl, BaseParam params, Class<T> resultType) {
-
+    public static <T> List<T> sendAPI(String host,String appKey,String appSecret,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";
@@ -55,7 +60,6 @@
 
         // STEP5锛氱粍瑁呰姹傚弬鏁�
         String body = JSON.toJSONString(params);
-        log.info("璇锋眰鍙傛暟:{}",body);
         // STEP6锛氳皟鐢ㄦ帴鍙�
         String result = null;// post璇锋眰application/json绫诲瀷鍙傛暟
         List<T> dataList = new ArrayList<>();
@@ -80,6 +84,8 @@
         return dataList;
     }
 
+
+
     //瑙f瀽鏁版嵁
     private static <T> List<T> getDataList(JSONObject jsonObject, Class<T> resultClass) {
         if (jsonObject != null && ApiConstants.HKSuccessCode.equals(jsonObject.getString("code"))) {
@@ -96,6 +102,56 @@
         return null;
     }
 
+    /**
+     * 瀹炰綋瀵硅薄杞垚Map
+     * @param obj 瀹炰綋瀵硅薄
+     * @return
+     */
+    public static Map<String, String> object2Map(Object obj) {
+        Map<String, String> map = new HashMap<>();
+        if (obj == null) {
+            return map;
+        }
+        Class clazz = obj.getClass();
+        Field[] fields = clazz.getDeclaredFields();
+        try {
+            for (Field field : fields) {
+                field.setAccessible(true);
+                map.put(field.getName(), field.get(obj).toString());
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return map;
+    }
 
+    /**
+     * Map杞垚瀹炰綋瀵硅薄
+     * @param map map瀹炰綋瀵硅薄鍖呭惈灞炴��
+     * @param clazz 瀹炰綋瀵硅薄绫诲瀷
+     * @return
+     */
+    public static Object map2Object(Map<String, Object> map, Class<?> clazz) {
+        if (map == null) {
+            return null;
+        }
+        Object obj = null;
+        try {
+            obj = clazz.newInstance();
+
+            Field[] fields = obj.getClass().getDeclaredFields();
+            for (Field field : fields) {
+                int mod = field.getModifiers();
+                if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) {
+                    continue;
+                }
+                field.setAccessible(true);
+                field.set(obj, map.get(field.getName()));
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return obj;
+    }
 }
 

--
Gitblit v1.8.0