From 5dccf0dc687dfef1c91936af3cea06fe0609b918 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期三, 11 十二月 2024 17:31:11 +0800 Subject: [PATCH] osd时间bug、离线工单bug等 --- ycl-server/src/main/java/com/ycl/task/HKTask.java | 341 +++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 237 insertions(+), 104 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/task/HKTask.java b/ycl-server/src/main/java/com/ycl/task/HKTask.java index 00b346a..784d9cf 100644 --- a/ycl-server/src/main/java/com/ycl/task/HKTask.java +++ b/ycl-server/src/main/java/com/ycl/task/HKTask.java @@ -1,93 +1,114 @@ package com.ycl.task; import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.mongodb.client.result.DeleteResult; import com.ycl.feign.HkApiUtil; -import com.ycl.feign.HkApiUtil; +import com.ycl.platform.domain.entity.TMonitor; import com.ycl.platform.domain.param.HK.*; import com.ycl.platform.domain.result.HK.*; -import com.ycl.platform.service.ICheckIndexCarService; -import com.ycl.platform.service.ICheckIndexFaceService; -import com.ycl.platform.service.ICheckIndexVideoService; -import com.ycl.platform.service.IYwThresholdService; +import com.ycl.platform.domain.result.UY.VideoOnlineResult; +import com.ycl.platform.domain.vo.UpdateOnlineVO; +import com.ycl.platform.mapper.TMonitorMapper; +import com.ycl.platform.mapper.WorkOrderMapper; +import com.ycl.platform.service.*; import com.ycl.utils.DateUtils; import constant.ApiConstants; -import com.ycl.feign.HKClient; +import constant.CheckConstants; 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.util.Date; -import java.util.List; +import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; //娴峰悍瀵规帴鏁版嵁浠诲姟 @Slf4j @Component("HKTask") public class HKTask { + @Value("${HK.host}") + public String host; + @Value("${HK.appKey}") + public String appKey; + @Value("${HK.appSecret}") + public String appSecret; @Autowired private MongoTemplate mongoTemplate; @Autowired private IYwThresholdService ywThresholdService; @Autowired - private ICheckIndexFaceService checkIndexFaceService; + private YwPointService pointService; @Autowired - private ICheckIndexCarService checkIndexCarService; + private TMonitorMapper monitorMapper; @Autowired - private ICheckIndexVideoService checkIndexVideoService; - + private UYErrorTypeCheckService uyErrorTypeCheckService; //杞﹁締璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉 public void vehicleDeviceInspectionTask() { log.info("寮�濮嬫墽琛岃溅杈嗚澶囧叏妫�鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); -// VehicleDeviceInspectionParam param = new VehicleDeviceInspectionParam(); -// param.setPageNo(ApiConstants.PageNo); -// param.setPageSize(ApiConstants.HKPageSize); -// param.setDate(DateUtils.getDate()); -// param.setDataType(ApiConstants.HK_DataType_CAR); -// List<VehicleDeviceInspectionResult> list = HkApiUtil.sendAPI("/api/dqd/service/rs/v2/data/vehFullAmount/query", param, VehicleDeviceInspectionResult.class); -// if (!CollectionUtils.isEmpty(list)) { -// //濡傛灉瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 -// Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); -// DeleteResult result = mongoTemplate.remove(query, VehicleDeviceInspectionResult.class); -// //瀛樻斁鍦╩ongo涓� -// mongoTemplate.insertAll(list); -// //鍚屾鐨勬暟鎹繘琛屽伐鍗曢槇鍊煎鐞� -// ywThresholdService.carCheck(list); -// } - Query query = new Query(Criteria.where("mongoCreateTime").lt(DateUtils.getDayEnd(new Date()))); - ywThresholdService.carCheck(mongoTemplate.find(query, VehicleDeviceInspectionResult.class)); + VehicleDeviceInspectionParam param = new VehicleDeviceInspectionParam(); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + param.setDataType(ApiConstants.HK_DataType_CAR); + List<VehicleDeviceInspectionResult> list = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v2/data/vehFullAmount/query", param, VehicleDeviceInspectionResult.class); + if (!CollectionUtils.isEmpty(list)) { + //濡傛灉瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 + Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + DeleteResult result = mongoTemplate.remove(query, VehicleDeviceInspectionResult.class); + list.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(list, CheckConstants.Rule_Category_Car); + //瀛樻斁鍦╩ongo涓� + mongoTemplate.insertAll(list); + //鍚屾鐨勬暟鎹繘琛屽伐鍗曢槇鍊煎鐞� + ywThresholdService.carCheck(list); + } + // 鏈湴娴嬭瘯 +// Query query = new Query(Criteria.where("mongoCreateTime").lt(DateUtils.getDayEnd(new Date()))); +// ywThresholdService.carCheck(mongoTemplate.find(query, VehicleDeviceInspectionResult.class)); log.info("缁撴潫杞﹁締璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); } //浜鸿劯璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉 public void faceDeviceInspectionTask() { log.info("寮�濮嬫墽琛屼汉鑴歌澶囧叏妫�鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); -// FaceDeviceInspectionParam param = new FaceDeviceInspectionParam(); -// param.setPageNo(ApiConstants.PageNo); -// param.setPageSize(ApiConstants.HKPageSize); -// param.setDate(DateUtils.getDate()); -// List<FaceDeviceInspectionResult> list = HkApiUtil.sendAPI("/api/dqd/service/rs/v2/data/faceFullAmount/query", param, FaceDeviceInspectionResult.class); -// if (!CollectionUtils.isEmpty(list)) { -// //濡傛灉瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 -// Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); -// DeleteResult result = mongoTemplate.remove(query, FaceDeviceInspectionResult.class); -// //瀛樻斁鍦╩ongo涓� -// mongoTemplate.insertAll(list); -// //鍚屾鐨勬暟鎹繘琛屽伐鍗曢槇鍊煎鐞� -// //TODO:鍙兘鏈夐噸澶嶅伐鍗� -// ywThresholdService.faceCheck(list); -// } - Query query = new Query(Criteria.where("mongoCreateTime").lt(DateUtils.getDayEnd(new Date()))); - ywThresholdService.faceCheck(mongoTemplate.find(query, FaceDeviceInspectionResult.class)); + FaceDeviceInspectionParam param = new FaceDeviceInspectionParam(); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + List<FaceDeviceInspectionResult> list = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v2/data/faceFullAmount/query", param, FaceDeviceInspectionResult.class); + if (!CollectionUtils.isEmpty(list)) { + //濡傛灉瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 + Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + DeleteResult result = mongoTemplate.remove(query, FaceDeviceInspectionResult.class); + list.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(list,CheckConstants.Rule_Category_Face); + //瀛樻斁鍦╩ongo涓� + mongoTemplate.insertAll(list); + //鍚屾鐨勬暟鎹繘琛屽伐鍗曢槇鍊煎鐞� + ywThresholdService.faceCheck(list); + } +// Query query = new Query(Criteria.where("mongoCreateTime").lt(DateUtils.getDayEnd(new Date()))); +// ywThresholdService.faceCheck(mongoTemplate.find(query, FaceDeviceInspectionResult.class)); log.info("缁撴潫浜鸿劯璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); } - //鎶撴媿鏁版嵁閲忕洃娴嬬粨鏋� + // 鎶撴媿鏁版嵁閲忕洃娴嬬粨鏋� public void snapshotDataMonitorTask() { log.info("寮�濮嬫墽琛屾姄鎷嶆暟鎹噺妫�娴嬬粨鏋滄暟鎹悓姝�"); /** 杞﹁締鏁版嵁 */ @@ -96,13 +117,19 @@ carParam.setPageSize(ApiConstants.HKPageSize); carParam.setDate(DateUtils.getDate()); carParam.setDataType(ApiConstants.HK_DataType_CAR); - List<SnapshotDataMonitorResult> carList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/data/snapCountDetail/query", carParam, SnapshotDataMonitorResult.class); + List<SnapshotDataMonitorResult> carList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/snapCountDetail/query", carParam, SnapshotDataMonitorResult.class); if (!CollectionUtils.isEmpty(carList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())) .and("dataType").is(ApiConstants.HK_DataType_CAR)); DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class); + carList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(carList,CheckConstants.Rule_Category_Car); //瀛樻斁鍦╩ongo涓� carList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_CAR)); mongoTemplate.insertAll(carList); @@ -114,18 +141,57 @@ faceParam.setPageSize(ApiConstants.HKPageSize); faceParam.setDate(DateUtils.getDate()); faceParam.setDataType(ApiConstants.HK_DataType_FACE); - List<SnapshotDataMonitorResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/data/snapCountDetail/query", faceParam, SnapshotDataMonitorResult.class); + List<SnapshotDataMonitorResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/snapCountDetail/query", faceParam, SnapshotDataMonitorResult.class); if (!CollectionUtils.isEmpty(faceList)) { + log.info("缁撴灉鏁版嵁澶у皬锛歿}",faceList.size()); //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())) .and("dataType").is(ApiConstants.HK_DataType_FACE)); DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class); + faceList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList,CheckConstants.Rule_Category_Face); //瀛樻斁鍦╩ongo涓� - carList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_FACE)); + faceList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_FACE)); mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟 + //淇敼online鐘舵�佷互鍙婄敓鎴愬伐鍗� + List<SnapshotDataMonitorResult> totalResult =new ArrayList<>(); + totalResult.addAll(carList); + totalResult.addAll(faceList); + if(!CollectionUtils.isEmpty(totalResult)) { + List<String> numbers = totalResult.stream().map(SnapshotDataMonitorResult::getExternalIndexCode).collect(Collectors.toList()); + Map<String, TMonitor> map = monitorMapper.selectList(new QueryWrapper<TMonitor>().in("serial_number", numbers)) + .stream().collect(Collectors.toMap(TMonitor::getSerialNumber, Function.identity())); + Date now = new Date(); + //杩囨护 + totalResult = totalResult.stream().filter(item -> map.get(item.getExternalIndexCode()) != null).collect(Collectors.toList()); + totalResult.forEach(item->{ + TMonitor monitor = map.get(item.getExternalIndexCode()); + item.setIp(monitor.getIp()); + }); + List<UpdateOnlineVO> willUpdateList = totalResult.stream().map(item -> { + UpdateOnlineVO vo = new UpdateOnlineVO(); + vo.setOnline(item.getDataCount()>0?1:-1); + vo.setIp(map.get(item.getExternalIndexCode()).getIp()); + vo.setUpdateTime(now); + return vo; + }).collect(Collectors.toList()); + monitorMapper.updateOnlineFromUyOrHk(willUpdateList); + //绂荤嚎鐢熸垚宸ュ崟,涓�涓猧p鍙敓鎴愪竴涓伐鍗� + List<SnapshotDataMonitorResult> workOrders = new ArrayList<>(totalResult.stream() + .filter(item -> ApiConstants.UY_OnlineSite_Offline.equals(item.getDataCount()>0?1:-1)) + .collect(Collectors.toMap( + SnapshotDataMonitorResult::getIp, + Function.identity(), + (existing, replacement) -> existing // 濡傛灉閬囧埌鐩稿悓鐨� IP锛屼繚鐣欑涓�涓紙existing锛� + )).values()); + uyErrorTypeCheckService.hkOnlineCheck(workOrders); + } log.info("缁撴潫鎶撴媿鏁版嵁閲忔娴嬬粨鏋滄暟鎹悓姝�"); } @@ -137,16 +203,21 @@ param.setPageNo(ApiConstants.PageNo); param.setPageSize(ApiConstants.HKPageSize); param.setDate(DateUtils.getDate()); - List<MonitoringDetailResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/device/cameraExpDetailInfo/query", param, MonitoringDetailResult.class); + List<MonitoringDetailResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/device/cameraExpDetailInfo/query", param, MonitoringDetailResult.class); if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, MonitoringDetailResult.class); + faceList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList,CheckConstants.Rule_Category_Face); //瀛樻斁鍦╩ongo涓� mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫閲囬泦璁惧灞炴�х洃娴嬬粨鏋滄暟鎹悓姝�"); } @@ -158,16 +229,21 @@ param.setPageNo(ApiConstants.PageNo); param.setPageSize(ApiConstants.HKPageSize); param.setDate(DateUtils.getDate()); - List<CrossDetailResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/device/crossExpDetailInfo/query", param, CrossDetailResult.class); - if (!CollectionUtils.isEmpty(faceList)) { + List<CrossDetailResult> carList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/device/crossExpDetailInfo/query", param, CrossDetailResult.class); + if (!CollectionUtils.isEmpty(carList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, CrossDetailResult.class); + carList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(carList,CheckConstants.Rule_Category_Car); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insertAll(faceList); + mongoTemplate.insertAll(carList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫鍗″彛灞炴�х洃娴嬬粨鏋滄暟鎹悓姝�"); } @@ -180,17 +256,22 @@ param.setPageSize(ApiConstants.HKPageSize); param.setDate(DateUtils.getDate()); param.setDataType(ApiConstants.HK_DataType_CAR); - List<DataIntegrityMonitoringResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/data/attributeIntegrity/query", param, DataIntegrityMonitoringResult.class); + List<DataIntegrityMonitoringResult> carList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/attributeIntegrity/query", param, DataIntegrityMonitoringResult.class); - if (!CollectionUtils.isEmpty(faceList)) { + if (!CollectionUtils.isEmpty(carList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, DataIntegrityMonitoringResult.class); + carList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(carList,CheckConstants.Rule_Category_Car); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insertAll(faceList); + mongoTemplate.insertAll(carList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫鏁版嵁瀹屾暣鎬х洃娴嬬粨鏋滄暟鎹悓姝�"); } @@ -203,17 +284,22 @@ param.setPageSize(ApiConstants.HKPageSize); param.setDate(DateUtils.getDate()); param.setDataType(ApiConstants.HK_DataType_CAR); - List<AttrRecognitionMonitorResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/data/attributeRecognition/query", param, AttrRecognitionMonitorResult.class); + List<AttrRecognitionMonitorResult> carList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/attributeRecognition/query", param, AttrRecognitionMonitorResult.class); - if (!CollectionUtils.isEmpty(faceList)) { + if (!CollectionUtils.isEmpty(carList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, AttrRecognitionMonitorResult.class); + carList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(carList,CheckConstants.Rule_Category_Car); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insertAll(faceList); + mongoTemplate.insertAll(carList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫灞炴�ц瘑鍒噯纭洃娴嬬粨鏋滄暟鎹悓姝�"); } @@ -228,7 +314,7 @@ carParam.setPageSize(ApiConstants.HKPageSize); carParam.setDate(DateUtils.getDate()); carParam.setDataType(ApiConstants.HK_DataType_CAR); - List<SnapshotDelayMonitorResult> carList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/data/snapAgingDetail/query", carParam, SnapshotDelayMonitorResult.class); + List<SnapshotDelayMonitorResult> carList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/snapAgingDetail/query", carParam, SnapshotDelayMonitorResult.class); if (!CollectionUtils.isEmpty(carList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 @@ -237,7 +323,13 @@ .and("dataType").is(ApiConstants.HK_DataType_CAR)); DeleteResult result = mongoTemplate.remove(query, SnapshotDelayMonitorResult.class); //瀛樻斁鍦╩ongo涓� - carList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_CAR)); + carList.stream().forEach(item -> { + item.setDataType(ApiConstants.HK_DataType_CAR); + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(carList,CheckConstants.Rule_Category_Car); mongoTemplate.insertAll(carList); } @@ -247,7 +339,7 @@ faceParam.setPageSize(ApiConstants.HKPageSize); faceParam.setDate(DateUtils.getDate()); faceParam.setDataType(ApiConstants.HK_DataType_FACE); - List<SnapshotDelayMonitorResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/data/snapAgingDetail/query", faceParam, SnapshotDelayMonitorResult.class); + List<SnapshotDelayMonitorResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/snapAgingDetail/query", faceParam, SnapshotDelayMonitorResult.class); if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 @@ -256,10 +348,15 @@ .and("dataType").is(ApiConstants.HK_DataType_FACE)); DeleteResult result = mongoTemplate.remove(query, SnapshotDelayMonitorResult.class); //瀛樻斁鍦╩ongo涓� - faceList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_FACE)); + faceList.forEach(item -> { + item.setDataType(ApiConstants.HK_DataType_FACE); + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList,CheckConstants.Rule_Category_Face); mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟 log.info("缁撴潫鎶撴媿鏁版嵁鏃跺欢鐩戞祴缁撴灉鏁版嵁鍚屾"); } @@ -272,19 +369,25 @@ param.setPageSize(ApiConstants.HKPageSize); param.setDate(DateUtils.getDate()); param.setDataType(ApiConstants.HK_DataType_CAR); - List<PicAccessResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v1/data/picAccessDetail/query", param, PicAccessResult.class); + List<PicAccessResult> carList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/picAccessDetail/query", param, PicAccessResult.class); - if (!CollectionUtils.isEmpty(faceList)) { + if (!CollectionUtils.isEmpty(carList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, PicAccessResult.class); + carList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(carList,CheckConstants.Rule_Category_Car); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insertAll(faceList); + mongoTemplate.insertAll(carList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫鍥剧墖璁块棶鐩戞祴缁撴灉鏁版嵁鍚屾"); } + //杞﹁締璁惧鎶芥鎸囨爣鐩戞祴缁撴灉 public void vehicleDeviceSamplingTask() { log.info("寮�濮嬫墽琛岃溅杈嗚澶囨娊妫�鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); @@ -294,17 +397,22 @@ param.setPageSize(ApiConstants.HKPageSize); param.setDate(DateUtils.getDate()); param.setDataType(ApiConstants.HK_DataType_CAR); - List<VehicleDeviceSamplingResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v2/data/vehSampleAmount/query", param, VehicleDeviceSamplingResult.class); + List<VehicleDeviceSamplingResult> carList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v2/data/vehSampleAmount/query", param, VehicleDeviceSamplingResult.class); - if (!CollectionUtils.isEmpty(faceList)) { + if (!CollectionUtils.isEmpty(carList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, VehicleDeviceSamplingResult.class); + carList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(carList,CheckConstants.Rule_Category_Car); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insertAll(faceList); + mongoTemplate.insertAll(carList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫杞﹁締璁惧鎶芥鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); } @@ -316,46 +424,71 @@ param.setPageNo(ApiConstants.PageNo); param.setPageSize(ApiConstants.HKPageSize); param.setDate(DateUtils.getDate()); - List<FaceDeviceSamplingResult> faceList = HkApiUtil.sendAPI("/api/dqd/service/rs/v2/data/faceSampleAmount/query", param, FaceDeviceSamplingResult.class); + List<FaceDeviceSamplingResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v2/data/faceSampleAmount/query", param, FaceDeviceSamplingResult.class); if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, FaceDeviceSamplingResult.class); + faceList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList,CheckConstants.Rule_Category_Face); //瀛樻斁鍦╩ongo涓� mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫浜鸿劯璁惧鎶芥鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); } - //娴嬭瘯 - public void test() { - log.info("娴嬭瘯娴峰悍鎺ュ彛"); - HkApiUtil.sendAPI("/api/dqd/service/rs/v2/data/faceDetect/query", new FaceDeviceSamplingParam(), Object.class); - log.info("缁撴潫->{}锛岃皟鐢ㄦ垚鍔�"); + //涓氬姟鏍� + public void TreeTask() { + log.info("寮�濮嬫墽琛屼笟鍔℃爲鏁版嵁"); + TreeParam param = new TreeParam(); + param.setStartDate("2024-12-06"); + param.setEndDate("2024-12-06"); + List<HKTreeResult> faceList = HkApiUtil.sendGetAPI(host,appKey,appSecret,"/api/third/timeTree", param, HKTreeResult.class); +// if (!CollectionUtils.isEmpty(faceList)) { +// //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 +// Query query = new Query(Criteria +// .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); +// DeleteResult result = mongoTemplate.remove(query, FaceDeviceSamplingResult.class); +// faceList.stream().forEach(item -> { +// if (Objects.nonNull(item.getExternalIndexCode())) { +// item.setNo(item.getExternalIndexCode()); +// } +// }); +// pointService.setDeviceTagByGB(faceList,CheckConstants.Rule_Category_Face); +// //瀛樻斁鍦╩ongo涓� +// mongoTemplate.insertAll(faceList); +// } + log.info("缁撴潫涓氬姟鏍戞暟鎹�"); } - //娴嬭瘯 - public void test1() { - log.info("娴嬭瘯娴峰悍鎺ュ彛"); - HkApiUtil.sendAPI("/api/dqd/service/rs/v1/device/coordinateExpInfo/query", new FaceDeviceSamplingParam(), Object.class); - log.info("缁撴潫->{}锛岃皟鐢ㄦ垚鍔�"); - } - - //娴嬭瘯 - public void test2() { - log.info("娴嬭瘯娴峰悍鎺ュ彛"); - HkApiUtil.sendAPI("/api/dqd/service/rs/v1/device/gbCodeExpInfo/query", new FaceDeviceSamplingParam(), Object.class); - log.info("缁撴潫->{}锛岃皟鐢ㄦ垚鍔�"); - } - - //娴嬭瘯 - public void test3() { - log.info("娴嬭瘯娴峰悍鎺ュ彛"); - HkApiUtil.sendAPI("/api/dqd/service/rs/v2/data/passDetect/query", new FaceDeviceSamplingParam(), Object.class); - log.info("缁撴潫->{}锛岃皟鐢ㄦ垚鍔�"); + //鑰冩牳鎴愮哗 + public void HkScoreTask() { + log.info("寮�濮嬫墽琛屾捣搴疯�冩牳鎴愮哗鏁版嵁"); + ScoreParam param = new ScoreParam(); + param.setStartDate("2024-12-06"); + param.setEndDate("2024-12-06"); + List<HKScoreResult> dataList = HkApiUtil.sendGetAPI(host,appKey,appSecret,"/api/third/score/get", param, HKScoreResult.class); +// if (!CollectionUtils.isEmpty(faceList)) { +// //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 +// Query query = new Query(Criteria +// .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); +// DeleteResult result = mongoTemplate.remove(query, FaceDeviceSamplingResult.class); +// faceList.stream().forEach(item -> { +// if (Objects.nonNull(item.getExternalIndexCode())) { +// item.setNo(item.getExternalIndexCode()); +// } +// }); +// pointService.setDeviceTagByGB(faceList,CheckConstants.Rule_Category_Face); +// //瀛樻斁鍦╩ongo涓� +// mongoTemplate.insertAll(faceList); +// } + log.info("缁撴潫娴峰悍鑰冩牳鎴愮哗鏁版嵁"); } //瑙f瀽鏁版嵁 -- Gitblit v1.8.0