From 70dfa087a9f61ecc33f3b5bc618202c2023e38f3 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 19 八月 2024 15:45:26 +0800
Subject: [PATCH] 优云接口工单生成

---
 ycl-server/src/main/java/com/ycl/task/CarTask.java |   61 ++++++++++++++++++++++++++----
 1 files changed, 53 insertions(+), 8 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/task/CarTask.java b/ycl-server/src/main/java/com/ycl/task/CarTask.java
index 5608389..fd36a2a 100644
--- a/ycl-server/src/main/java/com/ycl/task/CarTask.java
+++ b/ycl-server/src/main/java/com/ycl/task/CarTask.java
@@ -3,12 +3,13 @@
 
 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.SnapshotDataMonitorResult;
-import com.ycl.platform.domain.result.HK.SnapshotDelayMonitorResult;
+import com.ycl.platform.domain.result.HK.*;
+import com.ycl.platform.domain.vo.TMonitorVO;
+import com.ycl.platform.mapper.TMonitorMapper;
 import com.ycl.utils.DateUtils;
 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;
@@ -18,6 +19,7 @@
 
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 杞﹁締璁$畻鑰冩牳鎸囨爣浠诲姟
@@ -28,10 +30,11 @@
 public class CarTask {
     @Autowired
     private MongoTemplate mongoTemplate;
-
+    @Autowired
+    private TMonitorMapper monitorMapper;
     public void siteOnlineTask() {
         Date yesterday = DateUtils.addDays(new Date(), -1);
-        //鐐逛綅鍦ㄧ嚎鐜囧拰瑙嗗浘搴撳鎺ョǔ瀹氭��
+        //璁$畻鐐逛綅鍦ㄧ嚎鐜囧拰瑙嗗浘搴撳鎺ョǔ瀹氭��
         Query query = new Query();
         query.addCriteria(Criteria
                 .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))
@@ -40,7 +43,19 @@
         CalculationStrategy<SnapshotDataMonitorResult> calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_SiteOnline_ViewStability);
         calculator.calculate(results);
     }
-    public void infoAccuracyTask(){
+
+    public void deviceSampleTask() {
+        Date yesterday = DateUtils.addDays(new Date(), -1);
+        //璁$畻杞﹁締鍗″彛璁惧鏁版嵁璇嗗埆鍑嗙‘鎬с�乽rl鍙敤鎬с�佸ぇ鍥惧彲鐢ㄦ��
+        Query query = new Query();
+        query.addCriteria(Criteria
+                .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday)));
+        List<VehicleDeviceSamplingResult> results = mongoTemplate.find(query, VehicleDeviceSamplingResult.class);
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_DataAccuracy_Url_PicUsability);
+        calculator.calculate(results);
+    }
+
+    public void infoAccuracyTask() {
         Date yesterday = DateUtils.addDays(new Date(), -1);
         //璁$畻杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜�
         Query query = new Query();
@@ -50,9 +65,10 @@
         CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_InfoAccuracy);
         calculator.calculate(results);
     }
-    public void snapShopDelay(){
+
+    public void snapShopDelay() {
         Date yesterday = DateUtils.addDays(new Date(), -1);
-        //璁$畻杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜�
+        //璁$畻杞﹁締鎶撴媿鏁版嵁涓婁紶鍙婃椂鎬�
         Query query = new Query();
         query.addCriteria(Criteria
                 .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))
@@ -62,5 +78,34 @@
         calculator.calculate(results);
     }
 
+    public void snapShopDataIntegrity() {
+        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<DataIntegrityMonitoringResult> results = mongoTemplate.find(query, DataIntegrityMonitoringResult.class);
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_DataIntegrity);
+        calculator.calculate(results);
+    }
+
+    public void clockAccuracyTask() {
+        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<VehicleDeviceInspectionResult> results = mongoTemplate.find(query, VehicleDeviceInspectionResult.class);
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_ClockAccuracy);
+        calculator.calculate(results);
+    }
+
+    public void directConsistentTask() {
+        //杞﹁締鐩綍涓�鑷寸巼
+        List<TMonitorVO> tMonitorVOS = monitorMapper.selectMonitorVOList();
+        List<TMonitorVO> list = tMonitorVOS.stream().filter(tMonitorVO -> tMonitorVO.getCameraFunType().contains(CheckConstants.Rule_Category_Car + "")).collect(Collectors.toList());
+        CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_DirectConsistent);
+        calculator.calculate(list);
+    }
 
 }

--
Gitblit v1.8.0