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 |   69 +++++++++++++++++++++++++++++-----
 1 files changed, 59 insertions(+), 10 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 cc344d3..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,16 +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;
@@ -25,22 +29,16 @@
 @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;
+
     /**
-     * 璋冪敤娴峰悍鎺ュ彛
+     * 璋冪敤娴峰悍鎺ュ彛 鍩虹鏁版嵁骞冲彴 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 = host; // 骞冲彴鐨刬p绔彛
         ArtemisConfig.appKey = appKey;  // 瀵嗛挜appkey
@@ -62,7 +60,6 @@
 
         // STEP5锛氱粍瑁呰姹傚弬鏁�
         String body = JSON.toJSONString(params);
-        log.info("璇锋眰鍙傛暟:{}",body);
         // STEP6锛氳皟鐢ㄦ帴鍙�
         String result = null;// post璇锋眰application/json绫诲瀷鍙傛暟
         List<T> dataList = new ArrayList<>();
@@ -87,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"))) {
@@ -103,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