From f962534ae431779f3e341365af2e30fdd0afeb0f Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期日, 13 十月 2024 16:20:13 +0800 Subject: [PATCH] 点位在线率恢复为取优云和海康数据 --- ycl-server/src/main/java/com/ycl/task/FaceTask.java | 12 ++++-- ycl-server/src/main/java/com/ycl/calculate/CarOnlineCalculation.java | 9 ++-- ycl-server/src/main/java/com/ycl/task/CarTask.java | 14 ++++-- ycl-server/src/main/java/com/ycl/task/VideoTask.java | 11 +++-- ycl-server/src/main/java/com/ycl/task/UYTask.java | 7 ++- ycl-server/src/main/java/com/ycl/calculate/FaceOnlineCalculation.java | 10 +++-- ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java | 4 +- ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java | 8 ++-- 8 files changed, 45 insertions(+), 30 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/calculate/CarOnlineCalculation.java b/ycl-server/src/main/java/com/ycl/calculate/CarOnlineCalculation.java index 79091ef..79640bf 100644 --- a/ycl-server/src/main/java/com/ycl/calculate/CarOnlineCalculation.java +++ b/ycl-server/src/main/java/com/ycl/calculate/CarOnlineCalculation.java @@ -33,7 +33,7 @@ */ @Component @Slf4j -public class CarOnlineCalculation extends IndexCalculationServe<TMonitorResult, CarOnlineCalculation.AreaStats> implements CalculationStrategy<TMonitorResult> { +public class CarOnlineCalculation extends IndexCalculationServe<SnapshotDataMonitorResult, CarOnlineCalculation.AreaStats> implements CalculationStrategy<SnapshotDataMonitorResult> { @Autowired private CheckIndexCarMapper checkIndexCarMapper; @Autowired @@ -46,7 +46,7 @@ } @Override - public void calculate(List<TMonitorResult> list) { + public void calculate(List<SnapshotDataMonitorResult> list) { //鑾峰彇鍒嗗尯鍩熺殑鎸囨爣鏁伴噺 Map<String, CarOnlineCalculation.AreaStats> areaStatsMap = getAreaStatsMap(list,Boolean.FALSE); if (areaStatsMap == null) return; @@ -70,12 +70,11 @@ * 绱鎬荤偣浣嶆暟銆佺绾挎暟銆佹�绘姄鎷嶉噺 */ @Override - public void updateAreaStats(Map<String, AreaStats> areaStatsMap, String key, TMonitorResult result) { + public void updateAreaStats(Map<String, AreaStats> areaStatsMap, String key, SnapshotDataMonitorResult result) { //杩斿洖瀵硅薄鐨勫紩鐢紝濡傛灉涓嶅瓨鍦ㄤ細鏀惧叆鏂扮殑key,value AreaStats stats = areaStatsMap.computeIfAbsent(key, k -> new AreaStats()); stats.totalSites++; - - if (result.getOnline()!=null && result.getOnline()) { + if (ApiConstants.HK_SnapCount_ResultType_Null != result.getResultType()) { stats.onlineSites++; } } diff --git a/ycl-server/src/main/java/com/ycl/calculate/FaceOnlineCalculation.java b/ycl-server/src/main/java/com/ycl/calculate/FaceOnlineCalculation.java index ea52148..00cdcb0 100644 --- a/ycl-server/src/main/java/com/ycl/calculate/FaceOnlineCalculation.java +++ b/ycl-server/src/main/java/com/ycl/calculate/FaceOnlineCalculation.java @@ -2,12 +2,14 @@ import com.ycl.platform.domain.entity.CheckIndexCar; import com.ycl.platform.domain.entity.CheckIndexFace; +import com.ycl.platform.domain.result.HK.SnapshotDataMonitorResult; import com.ycl.platform.domain.result.SYS.TMonitorResult; import com.ycl.platform.mapper.CheckIndexCarMapper; import com.ycl.platform.mapper.CheckIndexFaceMapper; import com.ycl.platform.service.ICheckIndexCarService; import com.ycl.platform.service.ICheckIndexFaceService; import com.ycl.utils.DateUtils; +import constant.ApiConstants; import constant.CheckThreadConstants; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -27,7 +29,7 @@ */ @Component @Slf4j -public class FaceOnlineCalculation extends IndexCalculationServe<TMonitorResult, FaceOnlineCalculation.AreaStats> implements CalculationStrategy<TMonitorResult> { +public class FaceOnlineCalculation extends IndexCalculationServe<SnapshotDataMonitorResult, FaceOnlineCalculation.AreaStats> implements CalculationStrategy<SnapshotDataMonitorResult> { @Autowired private CheckIndexFaceMapper checkIndexFaceMapper; @Autowired @@ -40,7 +42,7 @@ } @Override - public void calculate(List<TMonitorResult> list) { + public void calculate(List<SnapshotDataMonitorResult> list) { //鑾峰彇鍒嗗尯鍩熺殑鎸囨爣鏁伴噺 Map<String, FaceOnlineCalculation.AreaStats> areaStatsMap = getAreaStatsMap(list,Boolean.FALSE); if (areaStatsMap == null) return; @@ -64,12 +66,12 @@ * 绱鎬荤偣浣嶆暟銆佺绾挎暟銆佹�绘姄鎷嶉噺 */ @Override - public void updateAreaStats(Map<String, AreaStats> areaStatsMap, String key, TMonitorResult result) { + public void updateAreaStats(Map<String, AreaStats> areaStatsMap, String key, SnapshotDataMonitorResult result) { //杩斿洖瀵硅薄鐨勫紩鐢紝濡傛灉涓嶅瓨鍦ㄤ細鏀惧叆鏂扮殑key,value AreaStats stats = areaStatsMap.computeIfAbsent(key, k -> new AreaStats()); stats.totalSites++; - if (result.getOnline()!=null && result.getOnline()) { + if (ApiConstants.HK_SnapCount_ResultType_Null != result.getResultType()) { stats.onlineSites++; } } 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 0c4b8a5..03d5fc0 100644 --- a/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java +++ b/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java @@ -43,12 +43,12 @@ String deptId = monitor.getDeptId().toString(); updateAreaStats(areaStatsMap, deptId, result); - // 澶勭悊鐪佸巺鏁版嵁 + // 澶勭悊鐪佸巺鑰冩牳鏁版嵁 if (result.getProvinceTag() != null && result.getProvinceTag()) { String provinceKey = ApiConstants.Province + deptId; updateAreaStats(areaStatsMap, provinceKey, result); } - // 澶勭悊鍏畨閮ㄦ暟鎹� + // 澶勭悊鍏畨閮ㄨ�冩牳鏁版嵁 if (needDept) { if (result.getDeptTag() != null && result.getDeptTag()) { String deptKey = ApiConstants.Dept + deptId; diff --git a/ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java b/ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java index a515e41..2892129 100644 --- a/ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java +++ b/ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java @@ -28,7 +28,7 @@ */ @Component @Slf4j -public class VideoOnlineCalculation extends IndexCalculationServe<TMonitorResult, VideoOnlineCalculation.AreaStats> implements CalculationStrategy<TMonitorResult> { +public class VideoOnlineCalculation extends IndexCalculationServe<VideoOnlineResult, VideoOnlineCalculation.AreaStats> implements CalculationStrategy<VideoOnlineResult> { @Autowired private CheckIndexVideoMapper checkIndexVideoMapper; @Autowired @@ -49,7 +49,7 @@ } @Override - public void calculate(List<TMonitorResult> list) { + public void calculate(List<VideoOnlineResult> list) { //鑾峰彇鍒嗗尯鍩熺殑鎸囨爣鏁伴噺 Map<String, VideoOnlineCalculation.AreaStats> areaStatsMap = getAreaStatsMap(list,Boolean.TRUE); if (areaStatsMap == null) return; @@ -73,7 +73,7 @@ * 绱鎬荤偣浣嶆暟銆佸湪绾跨偣浣嶆暟銆侀噸鐐圭偣浣嶆暟銆侀噸鐐圭偣浣嶅湪绾挎暟銆佹寚鎸ュ浘鍍忔暟銆佹寚鎸ュ浘鍍忓湪绾挎暟 */ @Override - public void updateAreaStats(Map<String, AreaStats> areaStatsMap, String key, TMonitorResult result) { + public void updateAreaStats(Map<String, AreaStats> areaStatsMap, String key, VideoOnlineResult result) { //杩斿洖瀵硅薄鐨勫紩鐢紝濡傛灉涓嶅瓨鍦ㄤ細鏀惧叆鏂扮殑key,value AreaStats stats = areaStatsMap.computeIfAbsent(key, k -> new AreaStats()); stats.totalSites++; @@ -88,7 +88,7 @@ if(result.getDeptTag()!=null && result.getDeptTag()){ stats.deptSites++; } - if (result.getOnline()!=null && result.getOnline()){ + if (ApiConstants.UY_OnlineSite_Online.equals(result.getStatus())){ stats.onlineSites++; if(result.getImportantTag()!=null && result.getImportantTag()){ stats.importantOnlineSites++; 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 b91432e..bc6dac8 100644 --- a/ycl-server/src/main/java/com/ycl/task/CarTask.java +++ b/ycl-server/src/main/java/com/ycl/task/CarTask.java @@ -44,11 +44,15 @@ private YwPointMapper pointMapper; public void siteOnlineTask() { log.info("寮�濮嬭绠楃偣浣嶅湪绾跨巼"); - VideoExportForm form = new VideoExportForm(); - form.setCameraFunType(Integer.valueOf(CheckConstants.Rule_Category_Car+"")); - List<TMonitorResult> tMonitorResults = monitorMapper.selectMonitorResult(form); - CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Car_SiteOnline); - calculator.calculate(tMonitorResults); + 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_SiteOnline); + calculator.calculate(results); log.info("缁撴潫璁$畻瑙嗗浘搴撳鎺ョǔ瀹氭��"); } 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 aaca386..2cf1baf 100644 --- a/ycl-server/src/main/java/com/ycl/task/FaceTask.java +++ b/ycl-server/src/main/java/com/ycl/task/FaceTask.java @@ -40,11 +40,15 @@ public void siteOnlineTask() { log.info("寮�濮嬭绠楃偣浣嶅湪绾跨巼"); - VideoExportForm form = new VideoExportForm(); - form.setCameraFunType(Integer.valueOf(CheckConstants.Rule_Category_Face+"")); - List<TMonitorResult> tMonitorResults = monitorMapper.selectMonitorResult(form); + 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); - calculator.calculate(tMonitorResults); + calculator.calculate(results); log.info("缁撴潫璁$畻瑙嗗浘搴撳鎺ョǔ瀹氭��"); } public void viewConnectTask() { diff --git a/ycl-server/src/main/java/com/ycl/task/UYTask.java b/ycl-server/src/main/java/com/ycl/task/UYTask.java index a97d502..a196083 100644 --- a/ycl-server/src/main/java/com/ycl/task/UYTask.java +++ b/ycl-server/src/main/java/com/ycl/task/UYTask.java @@ -174,7 +174,7 @@ /** * 鐐逛綅鍦ㄧ嚎妫�娴� */ - //TODO锛氳棰戠绾挎鏁般�佺洃娴嬫鏁� + //TODO锛氳棰戠绾挎鏁般�佺洃娴嬫鏁帮紙淇敼閫昏緫鍙拡瀵瑰伐鍗曪紝妫�娴嬪湪绾跨殑锛� public void pointOnline() throws ExecutionException, InterruptedException { log.info("寮�濮嬫娴嬬偣浣嶅湪绾�"); Integer times = 2; @@ -279,7 +279,7 @@ log.info("鐐逛綅鍦ㄧ嚎鐩戞祴瀹屾垚"); } - //锛堝純鐢級鐐逛綅鍦ㄧ嚎鐜� + //鐐逛綅鍦ㄧ嚎鐜囷紙浼樹簯锛� public void videoOnlineTask() { //瑙嗛鍥惧儚璐ㄩ噺 log.info("寮�濮嬫墽琛岀偣浣嶅湪绾挎暟鎹悓姝�"); @@ -301,6 +301,8 @@ Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, VideoOnlineResult.class); + //鎵撴爣绛� + pointService.setDeviceTagByGB(records); //瀛樻斁鍦╩ongo涓� mongoTemplate.insertAll(records); // 宸ュ崟鐢熸垚 @@ -349,6 +351,7 @@ item.setNo(item.getDeviceId()); } }); + //鎵撴爣绛� pointService.setDeviceTagByGB(records); //瀛樻斁鍦╩ongo涓� mongoTemplate.insertAll(records); diff --git a/ycl-server/src/main/java/com/ycl/task/VideoTask.java b/ycl-server/src/main/java/com/ycl/task/VideoTask.java index cd921d7..a2596a9 100644 --- a/ycl-server/src/main/java/com/ycl/task/VideoTask.java +++ b/ycl-server/src/main/java/com/ycl/task/VideoTask.java @@ -58,11 +58,14 @@ public void siteOnlineTask() { log.info("寮�濮嬭绠楃偣浣嶅湪绾跨巼"); - VideoExportForm form = new VideoExportForm(); - form.setCameraFunType(Integer.valueOf(CheckConstants.Rule_Category_Video+"")); - List<TMonitorResult> tMonitorResults = monitorMapper.selectMonitorResult(form); + 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<VideoOnlineResult> results = mongoTemplate.find(query, VideoOnlineResult.class); CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Video_SiteOnline); - calculator.calculate(tMonitorResults); + calculator.calculate(results); log.info("缁撴潫璁$畻鐐逛綅鍦ㄧ嚎鐜�"); } -- Gitblit v1.8.0