From b14531e3b850fe6d2fa916ba7b88b3e2bd2ff30a Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 11 九月 2024 16:47:48 +0800
Subject: [PATCH] OSD加标签

---
 ycl-server/src/main/java/com/ycl/task/FaceTask.java |   88 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 79 insertions(+), 9 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/task/FaceTask.java b/ycl-server/src/main/java/com/ycl/task/FaceTask.java
index f258b5a..0aad46f 100644
--- a/ycl-server/src/main/java/com/ycl/task/FaceTask.java
+++ b/ycl-server/src/main/java/com/ycl/task/FaceTask.java
@@ -3,13 +3,16 @@
 
 import com.ycl.calculate.CalculationStrategy;
 import com.ycl.factory.IndexCalculationFactory;
-import com.ycl.platform.domain.result.HK.CrossDetailResult;
-import com.ycl.platform.domain.result.HK.MonitoringDetailResult;
-import com.ycl.platform.domain.result.HK.SnapshotDataMonitorResult;
-import com.ycl.platform.domain.result.HK.SnapshotDelayMonitorResult;
+import com.ycl.platform.domain.result.HK.*;
+import com.ycl.platform.domain.result.SYS.TMonitorResult;
+import com.ycl.platform.domain.result.UY.MonitorQualifyResult;
+import com.ycl.platform.domain.vo.TMonitorVO;
+import com.ycl.platform.mapper.TMonitorMapper;
 import com.ycl.utils.DateUtils;
+import com.ycl.utils.StringUtils;
 import constant.ApiConstants;
 import constant.CalculationStrategyConstants;
+import constant.CheckConstants;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.mongodb.core.MongoTemplate;
@@ -19,6 +22,8 @@
 
 import java.util.Date;
 import java.util.List;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
 
 /**
  * 浜鸿劯璁$畻鑰冩牳鎸囨爣浠诲姟
@@ -29,31 +34,65 @@
 public class FaceTask {
     @Autowired
     private MongoTemplate mongoTemplate;
+    @Autowired
+    private TMonitorMapper monitorMapper;
 
+    //TODO锛氬姞浠诲姟
     public void siteOnlineTask() {
+        log.info("寮�濮嬭绠楃偣浣嶅湪绾跨巼");
+        List<TMonitorResult> tMonitorResults = monitorMapper.selectMonitorResult(CheckConstants.Rule_Category_Face);
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Face_SiteOnline);
+        calculator.calculate(tMonitorResults);
+        log.info("缁撴潫璁$畻瑙嗗浘搴撳鎺ョǔ瀹氭��");
+    }
+    //TODO锛氭敼鍚嶅瓧
+    public void viewConnectTask() {
+        log.info("寮�濮嬭绠楄鍥惧簱瀵规帴绋冲畾鎬�");
         Date yesterday = DateUtils.addDays(new Date(), -1);
-        //鐐逛綅鍦ㄧ嚎鐜囧拰瑙嗗浘搴撳鎺ョǔ瀹氭��
+        //瑙嗗浘搴撳鎺ョǔ瀹氭��
         Query query = new Query();
         query.addCriteria(Criteria
                 .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))
                 .and("dataType").is(ApiConstants.HK_DataType_FACE));
         List<SnapshotDataMonitorResult> results = mongoTemplate.find(query, SnapshotDataMonitorResult.class);
-        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Face_SiteOnline_ViewStability);
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Face_ViewStability);
         calculator.calculate(results);
+        log.info("缁撴潫璁$畻浜鸿劯鐐逛綅鍦ㄧ嚎鐜囧拰瑙嗗浘搴撳鎺ョǔ瀹氭��");
     }
-    public void InfoAccuracyTask(){
+
+
+    public void deviceSampleTask() {
+        log.info("寮�濮嬭绠椾汉鑴稿浘鐗囧悎鏍肩巼銆佸ぇ鍥惧彲鐢ㄦ��");
         Date yesterday = DateUtils.addDays(new Date(), -1);
-        //璁$畻杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜�
+        //璁$畻浜鸿劯鍥剧墖鍚堟牸鐜囥�佸ぇ鍥惧彲鐢ㄦ��
+        Query query = new Query();
+        query.addCriteria(Criteria
+                .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday)));
+        List<FaceDeviceSamplingResult> results = mongoTemplate.find(query, FaceDeviceSamplingResult.class);
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Face_DataAccuracy_PicUsability);
+        calculator.calculate(results);
+        log.info("缁撴潫璁$畻浜鸿劯鍥剧墖鍚堟牸鐜囥�佸ぇ鍥惧彲鐢ㄦ��");
+    }
+
+
+    public void infoAccuracyTask(){
+        log.info("寮�濮嬭绠椾汉鑴稿崱鍙d俊鎭噰闆嗗噯纭巼");
+        Date yesterday = DateUtils.addDays(new Date(), -1);
+        //璁$畻浜鸿劯鍗″彛淇℃伅閲囬泦鍑嗙‘鐜�
         Query query = new Query();
         query.addCriteria(Criteria
                 .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday)));
         List<MonitoringDetailResult> results = mongoTemplate.find(query, MonitoringDetailResult.class);
         CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Face_InfoAccuracy);
         calculator.calculate(results);
+        log.info("缁撴潫璁$畻浜鸿劯鍗″彛淇℃伅閲囬泦鍑嗙‘鐜�");
     }
+
+
     public void snapShopDelay(){
+        log.info("寮�濮嬭绠椾汉鑴告姄鎷嶆暟鎹笂浼犲強鏃舵��");
         Date yesterday = DateUtils.addDays(new Date(), -1);
-        //璁$畻杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜�
+        //璁$畻浜鸿劯鎶撴媿鏁版嵁涓婁紶鍙婃椂鎬�
         Query query = new Query();
         query.addCriteria(Criteria
                 .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))
@@ -61,5 +100,36 @@
         List<SnapshotDelayMonitorResult> results = mongoTemplate.find(query, SnapshotDelayMonitorResult.class);
         CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Face_SnapshotDelay);
         calculator.calculate(results);
+        log.info("缁撴潫璁$畻浜鸿劯鎶撴媿鏁版嵁涓婁紶鍙婃椂鎬�");
+    }
+
+
+    public void clockAccuracyTask() {
+        log.info("寮�濮嬭绠椾汉鑴歌澶囨椂閽熷噯纭��");
+        Date yesterday = DateUtils.addDays(new Date(), -1);
+        //璁$畻浜鸿劯璁惧鏃堕挓鍑嗙‘鎬�
+        Query query = new Query();
+        query.addCriteria(Criteria
+                .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday)));
+        List<FaceDeviceInspectionResult> results = mongoTemplate.find(query, FaceDeviceInspectionResult.class);
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Face_ClockAccuracy);
+        calculator.calculate(results);
+        log.info("缁撴潫璁$畻浜鸿劯璁惧鏃堕挓鍑嗙‘鎬�");
+    }
+
+    public void directConsistentTask() {
+        log.info("寮�濮嬭绠椾汉鑴哥洰褰曚竴鑷寸巼");
+        //浜鸿劯鐩綍涓�鑷寸巼
+        Date yesterday = DateUtils.addDays(new Date(), -1);
+        Query query = new Query();
+        query.addCriteria(Criteria
+                .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday)));
+        // 1/2/3 瑙嗛/杞﹁締/浜鸿劯
+        Pattern pattern = Pattern.compile(".*3.*");
+        query.addCriteria(Criteria.where("sxjgnlx.value").regex(pattern));
+        List<MonitorQualifyResult> results = mongoTemplate.find(query, MonitorQualifyResult.class);
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Face_DirectConsistent);
+        calculator.calculate(results);
+        log.info("缁撴潫璁$畻浜鸿劯鐩綍涓�鑷寸巼");
     }
 }

--
Gitblit v1.8.0