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/task/CarTask.java | 82 +++++++++++++++++++++++++++------------- 1 files changed, 55 insertions(+), 27 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 26b1c93..e11a81a 100644 --- a/ycl-server/src/main/java/com/ycl/task/CarTask.java +++ b/ycl-server/src/main/java/com/ycl/task/CarTask.java @@ -1,11 +1,17 @@ package com.ycl.task; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ycl.calculate.CalculationStrategy; import com.ycl.factory.IndexCalculationFactory; +import com.ycl.platform.domain.entity.YwPoint; +import com.ycl.platform.domain.form.VideoExportForm; 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.platform.mapper.YwPointMapper; import com.ycl.utils.DateUtils; import com.ycl.utils.StringUtils; import constant.ApiConstants; @@ -20,6 +26,7 @@ import java.util.Date; import java.util.List; +import java.util.regex.Pattern; import java.util.stream.Collectors; /** @@ -33,46 +40,67 @@ private MongoTemplate mongoTemplate; @Autowired private TMonitorMapper monitorMapper; + @Autowired + private YwPointMapper pointMapper; public void siteOnlineTask() { - log.info("寮�濮嬭绠楄溅杈嗙偣浣嶅湪绾跨巼鍜岃鍥惧簱瀵规帴绋冲畾鎬�"); + log.info("寮�濮嬭绠楃偣浣嶅湪绾跨巼"); Date yesterday = DateUtils.addDays(new Date(), -1); - //TODO:鏃堕棿鍐欐浜� - Date date = DateUtils.getDay(2024,7,13); - //璁$畻鐐逛綅鍦ㄧ嚎鐜囧拰瑙嗗浘搴撳鎺ョǔ瀹氭�� + //璁$畻鐐逛綅鍦ㄧ嚎鐜� Query query = new Query(); query.addCriteria(Criteria - .where("mongoCreateTime").gte(DateUtils.getDayStart(date)).lt(DateUtils.getDayEnd(date)) + .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday)) .and("dataType").is(ApiConstants.HK_DataType_CAR)); List<SnapshotDataMonitorResult> results = mongoTemplate.find(query, SnapshotDataMonitorResult.class); - CalculationStrategy<SnapshotDataMonitorResult> calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_SiteOnline_ViewStability); + CalculationStrategy<SnapshotDataMonitorResult> calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_SiteOnline); calculator.calculate(results); - log.info("缁撴潫璁$畻鐐逛綅鍦ㄧ嚎鐜囧拰瑙嗗浘搴撳鎺ョǔ瀹氭��"); + log.info("缁撴潫璁$畻鐐逛綅鍦ㄧ嚎鐜�"); + } + + 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_CAR)); + List<SnapshotDataMonitorResult> results = mongoTemplate.find(query, SnapshotDataMonitorResult.class); + CalculationStrategy<SnapshotDataMonitorResult> calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_ViewStability); + calculator.calculate(results); + log.info("缁撴潫璁$畻瑙嗗浘搴撳鎺ョǔ瀹氭��"); } public void deviceSampleTask() { log.info("寮�濮嬭绠楄溅杈嗗崱鍙h澶囨暟鎹瘑鍒噯纭�с�乽rl鍙敤鎬с�佸ぇ鍥惧彲鐢ㄦ��"); Date yesterday = DateUtils.addDays(new Date(), -1); - //TODO:鏃堕棿鍐欐浜� - Date date = DateUtils.getDay(2024,7,13); //璁$畻杞﹁締鍗″彛璁惧鏁版嵁璇嗗埆鍑嗙‘鎬с�乽rl鍙敤鎬с�佸ぇ鍥惧彲鐢ㄦ�� Query query = new Query(); query.addCriteria(Criteria - .where("mongoCreateTime").gte(DateUtils.getDayStart(date)).lt(DateUtils.getDayEnd(date))); + .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); + CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_DataAccuracy_PicUsability); calculator.calculate(results); log.info("缁撴潫璁$畻杞﹁締鍗″彛璁惧鏁版嵁璇嗗埆鍑嗙‘鎬с�乽rl鍙敤鎬с�佸ぇ鍥惧彲鐢ㄦ��"); } - + public void carUrlTask() { + log.info("寮�濮嬭绠楄溅杈唘rl鍙敤鎬�"); + 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<PicAccessResult> results = mongoTemplate.find(query, PicAccessResult.class); + CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_Url); + calculator.calculate(results); + log.info("缁撴潫璁$畻url鍙敤鎬�"); + } public void infoAccuracyTask() { log.info("寮�濮嬭绠楄溅杈嗗崱鍙d俊鎭噰闆嗗噯纭巼"); Date yesterday = DateUtils.addDays(new Date(), -1); - //TODO:鏃堕棿鍐欐浜� - Date date = DateUtils.getDay(2024,7,13); //璁$畻杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜� Query query = new Query(); query.addCriteria(Criteria - .where("mongoCreateTime").gte(DateUtils.getDayStart(date)).lt(DateUtils.getDayEnd(date))); + .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))); List<CrossDetailResult> results = mongoTemplate.find(query, CrossDetailResult.class); CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_InfoAccuracy); calculator.calculate(results); @@ -82,12 +110,10 @@ public void snapShopDelayTask() { log.info("寮�濮嬭绠楄溅杈嗘姄鎷嶆暟鎹笂浼犲強鏃舵��"); Date yesterday = DateUtils.addDays(new Date(), -1); - //TODO:鏃堕棿鍐欐浜� - Date date = DateUtils.getDay(2024,7,13); //璁$畻杞﹁締鎶撴媿鏁版嵁涓婁紶鍙婃椂鎬� Query query = new Query(); query.addCriteria(Criteria - .where("mongoCreateTime").gte(DateUtils.getDayStart(date)).lt(DateUtils.getDayEnd(date)) + .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday)) .and("dataType").is(ApiConstants.HK_DataType_CAR)); List<SnapshotDelayMonitorResult> results = mongoTemplate.find(query, SnapshotDelayMonitorResult.class); CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_SnapshotDelay); @@ -98,12 +124,10 @@ public void snapShopDataIntegrity() { log.info("寮�濮嬭绠楄溅杈嗘暟鎹姄鎷嶅畬鏁存��"); Date yesterday = DateUtils.addDays(new Date(), -1); - //TODO:鏃堕棿鍐欐浜� - Date date = DateUtils.getDay(2024,7,13); //璁$畻杞﹁締鏁版嵁鎶撴媿瀹屾暣鎬� Query query = new Query(); query.addCriteria(Criteria - .where("mongoCreateTime").gte(DateUtils.getDayStart(date)).lt(DateUtils.getDayEnd(date))); + .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); @@ -113,12 +137,10 @@ public void clockAccuracyTask() { log.info("寮�濮嬭绠楄溅杈嗗崱鍙h澶囨椂閽熷噯纭��"); Date yesterday = DateUtils.addDays(new Date(), -1); - //TODO:鏃堕棿鍐欐浜� - Date date = DateUtils.getDay(2024,7,13); //璁$畻杞﹁締鍗″彛璁惧鏃堕挓鍑嗙‘鎬� Query query = new Query(); query.addCriteria(Criteria - .where("mongoCreateTime").gte(DateUtils.getDayStart(date)).lt(DateUtils.getDayEnd(date))); + .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); @@ -128,10 +150,16 @@ public void directConsistentTask() { log.info("寮�濮嬭绠楄溅杈嗙洰褰曚竴鑷寸巼"); //杞﹁締鐩綍涓�鑷寸巼 - List<TMonitorVO> tMonitorVOS = monitorMapper.selectMonitorVOList(); - List<TMonitorVO> list = tMonitorVOS.stream().filter(tMonitorVO -> !StringUtils.isEmpty(tMonitorVO.getCameraFunType()) && tMonitorVO.getCameraFunType().contains(CheckConstants.Rule_Category_Car + "")).collect(Collectors.toList()); + 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(".*2.*"); + query.addCriteria(Criteria.where("sxjgnlx.value").regex(pattern)); + List<MonitorQualifyResult> results = mongoTemplate.find(query, MonitorQualifyResult.class); CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_DirectConsistent); - calculator.calculate(list); + calculator.calculate(results); log.info("缁撴潫璁$畻杞﹁締鐩綍涓�鑷寸巼"); } -- Gitblit v1.8.0