From 3dd63e0590245a1b711b670c64342e1f41f00284 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 16 八月 2024 10:44:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ycl-pojo/src/main/java/com/ycl/platform/domain/param/UY/PyOsdParam.java        |   15 +++++
 ycl-server/src/main/resources/application-prod.yml                             |    1 
 ycl-server/src/main/java/com/ycl/feign/PythonClient.java                       |   21 +++++++
 ycl-server/src/main/resources/application-dev.yml                              |    1 
 ycl-server/src/main/java/com/ycl/task/PythonTask.java                          |   69 +++++++++++++++++++++++
 ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java          |    2 
 ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java |   27 ++------
 7 files changed, 116 insertions(+), 20 deletions(-)

diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/param/UY/PyOsdParam.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/param/UY/PyOsdParam.java
new file mode 100644
index 0000000..855dc71
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/param/UY/PyOsdParam.java
@@ -0,0 +1,15 @@
+package com.ycl.platform.domain.param.UY;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class PyOsdParam {
+    /**
+     * 鍥芥爣鐮�
+     */
+    private List<String> deviceNoList;
+
+    private String Date;
+}
diff --git a/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java b/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java
index a13d14e..b3ae363 100644
--- a/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java
+++ b/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java
@@ -180,7 +180,7 @@
         List<YwPoint> commandImages = pointMapper.selectByTag(null, null, Boolean.TRUE);
         return CollectionUtils.isEmpty(commandImages) ? new ArrayList<>() : commandImages.stream().map(YwPoint::getSerialNumber).collect(Collectors.toList());
     }
-    //杩斿洖閲嶇偣鎸囨尌鍥惧儚闆嗗悎
+    //杩斿洖monitor
     public List<String> getMonitorFromMongo() {
         // 鑾峰彇Calendar瀹炰緥锛岄粯璁や娇鐢ㄥ綋鍓嶆椂鍖哄拰璇█鐜
         Calendar calendar = Calendar.getInstance();
diff --git a/ycl-server/src/main/java/com/ycl/feign/PythonClient.java b/ycl-server/src/main/java/com/ycl/feign/PythonClient.java
new file mode 100644
index 0000000..28eaf2e
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/feign/PythonClient.java
@@ -0,0 +1,21 @@
+package com.ycl.feign;
+
+
+import com.alibaba.fastjson2.JSONObject;
+import com.ycl.platform.domain.param.UY.PyOsdParam;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+@Component
+@FeignClient(name = "PythonClient", url = "${request.pythonDomain}")
+public interface PythonClient {
+    /**
+     * OSD鏍囨敞
+     *
+     * @return 鏌ヨ鎽勫儚鏈篛SD鏍囨敞
+     */
+    @PostMapping("/")
+    JSONObject pythonOsd(@RequestBody PyOsdParam param);
+}
diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java b/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java
index 1a57746..59f54c1 100644
--- a/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java
+++ b/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java
@@ -1,7 +1,6 @@
 package com.ycl.platform.controller;
 
 import com.ycl.platform.domain.query.DataCenterQuery;
-import com.ycl.platform.domain.query.PlatformOnlineQuery;
 import com.ycl.platform.service.DataCenterService;
 import com.ycl.platform.service.PlatformOnlineService;
 import com.ycl.system.Result;
@@ -172,9 +171,6 @@
     }
 
 
-
-
-
     /**
      * 杞﹁締锛氳鍥惧簱瀵规帴绋冲畾鎬�
      *
@@ -286,13 +282,6 @@
     }
 
 
-
-
-
-
-
-
-
     /**
      * 浜鸿劯锛氳鍥惧簱瀵规帴绋冲畾鎬�
      *
@@ -301,7 +290,7 @@
      */
     @GetMapping("/faceViewDockStable")
     public Result faceViewDockStable(DataCenterQuery query) {
-        return Result.ok().data(dataCenterService.faceViewDockStable(query));
+        return (dataCenterService.faceViewDockStable(query));
     }
 
     /**
@@ -312,7 +301,7 @@
      */
     @GetMapping("/facePointOnlineRate")
     public Result facePointOnlineRate(DataCenterQuery query) {
-        return Result.ok().data(dataCenterService.facePointOnlineRate(query));
+        return (dataCenterService.facePointOnlineRate(query));
     }
 
     /**
@@ -323,7 +312,7 @@
      */
     @GetMapping("/faceDirectoryConsistency")
     public Result faceDirectoryConsistency(DataCenterQuery query) {
-        return Result.ok().data(dataCenterService.faceDirectoryConsistency(query));
+        return (dataCenterService.faceDirectoryConsistency(query));
     }
 
     /**
@@ -334,7 +323,7 @@
      */
     @GetMapping("/faceCollectionConsistency")
     public Result faceCollectionConsistency(DataCenterQuery query) {
-        return Result.ok().data(dataCenterService.faceCollectionConsistency(query));
+        return (dataCenterService.faceCollectionConsistency(query));
     }
 
     /**
@@ -345,7 +334,7 @@
      */
     @GetMapping("/faceImgQualification")
     public Result faceImgQualification(DataCenterQuery query) {
-        return Result.ok().data(dataCenterService.faceImgQualification(query));
+        return (dataCenterService.faceImgQualification(query));
     }
 
     /**
@@ -356,7 +345,7 @@
      */
     @GetMapping("/faceCapturesImagesAccuracy")
     public Result faceCapturesImagesAccuracy(DataCenterQuery query) {
-        return Result.ok().data(dataCenterService.faceCapturesImagesAccuracy(query));
+        return (dataCenterService.faceCapturesImagesAccuracy(query));
     }
 
     /**
@@ -367,7 +356,7 @@
      */
     @GetMapping("/faceTimelyUpload")
     public Result faceTimelyUpload(DataCenterQuery query) {
-        return Result.ok().data(dataCenterService.faceTimelyUpload(query));
+        return (dataCenterService.faceTimelyUpload(query));
     }
 
     /**
@@ -378,6 +367,6 @@
      */
     @GetMapping("/faceAvailabilityOfLargeImg")
     public Result faceAvailabilityOfLargeImg(DataCenterQuery query) {
-        return Result.ok().data(dataCenterService.faceAvailabilityOfLargeImg(query));
+        return (dataCenterService.faceAvailabilityOfLargeImg(query));
     }
 }
diff --git a/ycl-server/src/main/java/com/ycl/task/PythonTask.java b/ycl-server/src/main/java/com/ycl/task/PythonTask.java
new file mode 100644
index 0000000..d77cd15
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/task/PythonTask.java
@@ -0,0 +1,69 @@
+package com.ycl.task;
+
+import com.alibaba.fastjson2.JSONObject;
+import com.mongodb.client.result.DeleteResult;
+import com.ycl.feign.PythonClient;
+import com.ycl.feign.UYClient;
+import com.ycl.platform.domain.param.UY.*;
+import com.ycl.platform.domain.result.UY.*;
+import com.ycl.platform.service.ITMonitorService;
+import com.ycl.platform.service.IYwThresholdService;
+import com.ycl.utils.DateUtils;
+import constant.ApiConstants;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
+import org.springframework.stereotype.Component;
+import org.springframework.util.CollectionUtils;
+
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * python瀵规帴浠诲姟
+ * 鎷垮幓osd鏍囨敞銆佹爣娉ㄦ椂闂存暟鎹�
+ */
+@Slf4j
+@Component("PythonTask")
+public class PythonTask {
+    @Autowired
+    private MongoTemplate mongoTemplate;
+    @Autowired
+    private PythonClient pythonClient;
+
+    public void pythonOsdTask(){
+        log.info("寮�濮嬫墽琛宲ythonOsd鏁版嵁鍚屾");
+        PyOsdParam pyOsdParam = new PyOsdParam();
+        pyOsdParam.setDate(DateUtils.getDate());
+        Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
+        List<MonitorQualifyResult> oneMachineFileResults = mongoTemplate.find(query, MonitorQualifyResult.class);
+        if(!CollectionUtils.isEmpty(oneMachineFileResults)) {
+            List<String> deviceIdList = oneMachineFileResults.stream().map(result -> result.getSerialNumber().getValue()).collect(Collectors.toList());
+            pyOsdParam.setDeviceNoList(deviceIdList);
+            //鏌ヨosd鏍囨敞鍜屾椂闂翠俊鎭�
+            JSONObject jsonObject = pythonClient.pythonOsd(pyOsdParam);
+            if (jsonObject != null) {
+                if (ApiConstants.UYSuccessCode.equals(jsonObject.getInteger("code"))) {
+                    List<PyOsdResult> records = jsonObject.getList("data", PyOsdResult.class);
+                    if (!CollectionUtils.isEmpty(records)) {
+                        //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎
+                        Query pyQuery = new Query(Criteria
+                                .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
+                        DeleteResult result = mongoTemplate.remove(pyQuery, PyOsdResult.class);
+                        //瀛樻斁鍦╩ongo涓�
+                        mongoTemplate.insertAll(records);
+                    }
+                } else {
+                    log.error("pythonOsd鏁版嵁涓虹┖{}", jsonObject);
+                }
+            }
+            log.info("缁撴潫鎵цpythonOsd鏁版嵁鍚屾");
+        }
+    }
+}
diff --git a/ycl-server/src/main/resources/application-dev.yml b/ycl-server/src/main/resources/application-dev.yml
index 149d7ea..5eabbef 100644
--- a/ycl-server/src/main/resources/application-dev.yml
+++ b/ycl-server/src/main/resources/application-dev.yml
@@ -130,6 +130,7 @@
   retry: 4 # 鏈�澶ч噸璇曟鏁�
   youYunDomain: http://51.92.65.56 # 浼樹簯鍦板潃
   haiKangDomain: 51.92.65.48 # 娴峰悍鍦板潃
+  pythonDomain: 11 # python鑴氭湰鍦板潃
 
 youYun:
   tenantId: e10adc3949ba59abbe56e057f20f88dd
diff --git a/ycl-server/src/main/resources/application-prod.yml b/ycl-server/src/main/resources/application-prod.yml
index 81766c5..5010d56 100644
--- a/ycl-server/src/main/resources/application-prod.yml
+++ b/ycl-server/src/main/resources/application-prod.yml
@@ -130,6 +130,7 @@
   retry: 4 # 鏈�澶ч噸璇曟鏁�
   youYunDomain: http://51.92.65.56 # 浼樹簯鍦板潃
   haiKangDomain: 51.92.65.48 # 娴峰悍鍦板潃
+  pythonDomain: 11 # python鑴氭湰鍦板潃
 
 youYun:
   tenantId: e10adc3949ba59abbe56e057f20f88dd

--
Gitblit v1.8.0