From f8889f7364adae89e45a5ec3fcf4b38e430cf389 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 10 九月 2024 10:41:18 +0800 Subject: [PATCH] 工单详情 --- ycl-server/src/main/java/com/ycl/task/HKTask.java | 345 ++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 218 insertions(+), 127 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 69e7a29..85c3811 100644 --- a/ycl-server/src/main/java/com/ycl/task/HKTask.java +++ b/ycl-server/src/main/java/com/ycl/task/HKTask.java @@ -2,18 +2,15 @@ import com.alibaba.fastjson2.JSONObject; import com.mongodb.client.result.DeleteResult; +import com.ycl.feign.HkApiUtil; import com.ycl.platform.domain.param.HK.*; -import com.ycl.platform.domain.result.BaseResult; 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.service.*; import com.ycl.utils.DateUtils; import constant.ApiConstants; -import com.ycl.feign.HKClient; 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; @@ -22,41 +19,53 @@ import java.util.Date; import java.util.List; +import java.util.Objects; - +//娴峰悍瀵规帴鏁版嵁浠诲姟 @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 HKClient hkClient; - @Autowired private IYwThresholdService ywThresholdService; @Autowired - private ICheckIndexFaceService checkIndexFaceService; - @Autowired - private ICheckIndexCarService checkIndexCarService; - @Autowired - private ICheckIndexVideoService checkIndexVideoService; + private YwPointService pointService; //杞﹁締璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉 public void vehicleDeviceInspectionTask() { log.info("寮�濮嬫墽琛岃溅杈嗚澶囧叏妫�鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); VehicleDeviceInspectionParam param = new VehicleDeviceInspectionParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()); - JSONObject jsonObject = hkClient.VehicleDeviceInspection(param); - List<VehicleDeviceInspectionResult> list = getDataList(jsonObject, VehicleDeviceInspectionResult.class, "杞﹁締璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉鏁版嵁涓虹┖"); + 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("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + 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); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(list); + 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("缁撴潫杞﹁締璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); } @@ -64,58 +73,82 @@ public void faceDeviceInspectionTask() { log.info("寮�濮嬫墽琛屼汉鑴歌澶囧叏妫�鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); FaceDeviceInspectionParam param = new FaceDeviceInspectionParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()); - JSONObject jsonObject = hkClient.FaceDeviceInspection(param); - List<FaceDeviceInspectionResult> list = getDataList(jsonObject, FaceDeviceInspectionResult.class, "浜鸿劯璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉鏁版嵁涓虹┖"); + 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("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + 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); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(list); + 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)); log.info("缁撴潫浜鸿劯璁惧鍏ㄦ鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); } - //鎶撴媿鏁版嵁閲忕洃娴嬬粨鏋� + // 鎶撴媿鏁版嵁閲忕洃娴嬬粨鏋� public void snapshotDataMonitorTask() { log.info("寮�濮嬫墽琛屾姄鎷嶆暟鎹噺妫�娴嬬粨鏋滄暟鎹悓姝�"); /** 杞﹁締鏁版嵁 */ SnapshotDataMonitorParam carParam = new SnapshotDataMonitorParam(); - carParam.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR); - JSONObject carJsonObject = hkClient.SnapshotDataMonitor(carParam); - List<SnapshotDataMonitorResult> carList = getDataList(carJsonObject, SnapshotDataMonitorResult.class, "杞﹁締鎶撴媿鏁版嵁閲忔娴嬬粨鏋滄暟鎹�"); + carParam.setPageNo(ApiConstants.PageNo); + carParam.setPageSize(ApiConstants.HKPageSize); + carParam.setDate(DateUtils.getDate()); + carParam.setDataType(ApiConstants.HK_DataType_CAR); + 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("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())) - .and("dataType").is(ApiConstants.HK_DATATYPE_CAR)); + .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); //瀛樻斁鍦╩ongo涓� - carList.forEach(item -> item.setDataType(ApiConstants.HK_DATATYPE_CAR)); - mongoTemplate.insert(carList); + carList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_CAR)); + mongoTemplate.insertAll(carList); } /** 浜鸿劯鏁版嵁 */ SnapshotDataMonitorParam faceParam = new SnapshotDataMonitorParam(); - faceParam.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_FACE); - JSONObject faceJsonObject = hkClient.SnapshotDataMonitor(carParam); - List<SnapshotDataMonitorResult> faceList = getDataList(faceJsonObject, SnapshotDataMonitorResult.class, "浜鸿劯鎶撴媿鏁版嵁閲忔娴嬬粨鏋滄暟鎹负绌�"); + faceParam.setPageNo(ApiConstants.PageNo); + faceParam.setPageSize(ApiConstants.HKPageSize); + faceParam.setDate(DateUtils.getDate()); + faceParam.setDataType(ApiConstants.HK_DataType_FACE); + 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("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())) - .and("dataType").is(ApiConstants.HK_DATATYPE_FACE)); + .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); //瀛樻斁鍦╩ongo涓� - carList.forEach(item -> item.setDataType(ApiConstants.HK_DATATYPE_FACE)); - mongoTemplate.insert(faceList); + faceList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_FACE)); + mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟 log.info("缁撴潫鎶撴媿鏁版嵁閲忔娴嬬粨鏋滄暟鎹悓姝�"); } @@ -124,18 +157,24 @@ log.info("寮�濮嬫墽琛岄噰闆嗚澶囧睘鎬х洃娴嬬粨鏋滄暟鎹悓姝�"); //浜鸿劯鍗″彛淇℃伅閲囬泦鍑嗙‘鐜� MonitoringDetailParam param = new MonitoringDetailParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()); - JSONObject jsonObject = hkClient.monitorDetail(param); - List<MonitoringDetailResult> faceList = getDataList(jsonObject, MonitoringDetailResult.class, "閲囬泦璁惧灞炴�х洃娴嬬粨鏋滄暟鎹负绌�"); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + 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("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + .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); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(faceList); + mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫閲囬泦璁惧灞炴�х洃娴嬬粨鏋滄暟鎹悓姝�"); } @@ -144,18 +183,24 @@ log.info("寮�濮嬫墽琛屽崱鍙e睘鎬х洃娴嬬粨鏋滄暟鎹悓姝�"); //杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜� CrossDetailParam param = new CrossDetailParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()); - JSONObject jsonObject = hkClient.crossDetail(param); - List<CrossDetailResult> faceList = getDataList(jsonObject, CrossDetailResult.class, "鍗″彛灞炴�х洃娴嬬粨鏋滄暟鎹负绌�"); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + List<CrossDetailResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/device/crossExpDetailInfo/query", param, CrossDetailResult.class); if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria - .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, CrossDetailResult.class); + faceList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(faceList); + mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫鍗″彛灞炴�х洃娴嬬粨鏋滄暟鎹悓姝�"); } @@ -164,18 +209,26 @@ log.info("寮�濮嬫墽琛屾暟鎹畬鏁存�х洃娴嬬粨鏋滄暟鎹悓姝�"); //杞﹁締鍗″彛璁惧鎶撴媿鏁版嵁瀹屾暣鎬� DataIntegrityMonitoringParam param = new DataIntegrityMonitoringParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR); - JSONObject jsonObject = hkClient.DataIntegrityMonitoring(param); - List<DataIntegrityMonitoringResult> faceList = getDataList(jsonObject, DataIntegrityMonitoringResult.class, "鏁版嵁瀹屾暣鎬х洃娴嬬粨鏋滄暟鎹负绌�"); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + param.setDataType(ApiConstants.HK_DataType_CAR); + List<DataIntegrityMonitoringResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/attributeIntegrity/query", param, DataIntegrityMonitoringResult.class); + if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria - .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, DataIntegrityMonitoringResult.class); + faceList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(faceList); + mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫鏁版嵁瀹屾暣鎬х洃娴嬬粨鏋滄暟鎹悓姝�"); } @@ -184,18 +237,26 @@ log.info("寮�濮嬫墽琛屽睘鎬ц瘑鍒噯纭洃娴嬬粨鏋滄暟鎹悓姝�"); //杞﹁締鍗″彛璁惧鎶撴媿鏁版嵁鍑嗙‘鎬� AttrRecognitionParam param = new AttrRecognitionParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR); - JSONObject jsonObject = hkClient.AttrRecognitionMonitor(param); - List<AttrRecognitionMonitorResult> faceList = getDataList(jsonObject, AttrRecognitionMonitorResult.class, "灞炴�ц瘑鍒噯纭洃娴嬬粨鏋滄暟鎹负绌�"); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + param.setDataType(ApiConstants.HK_DataType_CAR); + List<AttrRecognitionMonitorResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/attributeRecognition/query", param, AttrRecognitionMonitorResult.class); + if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria - .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, AttrRecognitionMonitorResult.class); + faceList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(faceList); + mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫灞炴�ц瘑鍒噯纭洃娴嬬粨鏋滄暟鎹悓姝�"); } @@ -206,116 +267,146 @@ //杞﹁締鍗″彛璁惧鎶撴媿鏁版嵁涓婁紶鍙婃椂鎬� /** 杞﹁締鏁版嵁 */ SnapshotDelayMonitorParam carParam = new SnapshotDelayMonitorParam(); - carParam.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR); - JSONObject carJsonObject = hkClient.SnapshotDelayMonitor(carParam); - List<SnapshotDelayMonitorResult> carList = getDataList(carJsonObject, SnapshotDelayMonitorResult.class, "杞﹁締鎶撴媿鏁版嵁閲忔娴嬬粨鏋滄暟鎹�"); + carParam.setPageNo(ApiConstants.PageNo); + carParam.setPageSize(ApiConstants.HKPageSize); + carParam.setDate(DateUtils.getDate()); + carParam.setDataType(ApiConstants.HK_DataType_CAR); + List<SnapshotDelayMonitorResult> carList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/snapAgingDetail/query", carParam, SnapshotDelayMonitorResult.class); + if (!CollectionUtils.isEmpty(carList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria - .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())) - .and("dataType").is(ApiConstants.HK_DATATYPE_CAR)); - DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class); + .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())) + .and("dataType").is(ApiConstants.HK_DataType_CAR)); + DeleteResult result = mongoTemplate.remove(query, SnapshotDelayMonitorResult.class); //瀛樻斁鍦╩ongo涓� - carList.forEach(item -> item.setDataType(ApiConstants.HK_DATATYPE_CAR)); - mongoTemplate.insert(carList); + carList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_CAR)); + carList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(carList); + mongoTemplate.insertAll(carList); } /** 浜鸿劯鏁版嵁 */ SnapshotDelayMonitorParam faceParam = new SnapshotDelayMonitorParam(); - faceParam.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_FACE); - JSONObject faceJsonObject = hkClient.SnapshotDelayMonitor(faceParam); - List<SnapshotDelayMonitorParam> faceList = getDataList(faceJsonObject, SnapshotDelayMonitorParam.class, "浜鸿劯鎶撴媿鏁版嵁閲忔娴嬬粨鏋滄暟鎹负绌�"); + faceParam.setPageNo(ApiConstants.PageNo); + faceParam.setPageSize(ApiConstants.HKPageSize); + faceParam.setDate(DateUtils.getDate()); + faceParam.setDataType(ApiConstants.HK_DataType_FACE); + List<SnapshotDelayMonitorResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/snapAgingDetail/query", faceParam, SnapshotDelayMonitorResult.class); + if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria - .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())) - .and("dataType").is(ApiConstants.HK_DATATYPE_FACE)); - DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class); + .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())) + .and("dataType").is(ApiConstants.HK_DataType_FACE)); + DeleteResult result = mongoTemplate.remove(query, SnapshotDelayMonitorResult.class); //瀛樻斁鍦╩ongo涓� - carList.forEach(item -> item.setDataType(ApiConstants.HK_DATATYPE_FACE)); - mongoTemplate.insert(faceList); + faceList.forEach(item -> item.setDataType(ApiConstants.HK_DataType_FACE)); + mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟 log.info("缁撴潫鎶撴媿鏁版嵁鏃跺欢鐩戞祴缁撴灉鏁版嵁鍚屾"); } //鍥剧墖璁块棶鐩戞祴缁撴灉 - public void PicAccessTask() { + public void picAccessTask() { log.info("寮�濮嬫墽琛屽浘鐗囪闂洃娴嬬粨鏋滄暟鎹悓姝�"); //杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜囥�佽溅杈嗗崱鍙h澶噓rl鍙敤鎬� PicAccessParam param = new PicAccessParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR); - JSONObject jsonObject = hkClient.PicAccessMonitor(param); - List<PicAccessResult> faceList = getDataList(jsonObject, PicAccessResult.class, "鍥剧墖璁块棶鐩戞祴缁撴灉鏁版嵁涓虹┖"); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + param.setDataType(ApiConstants.HK_DataType_CAR); + List<PicAccessResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v1/data/picAccessDetail/query", param, PicAccessResult.class); + if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria - .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, PicAccessResult.class); + faceList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(faceList); + mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟澶勭悊 log.info("缁撴潫鍥剧墖璁块棶鐩戞祴缁撴灉鏁版嵁鍚屾"); } - //浜鸿劯璁惧鎶芥鎸囨爣鐩戞祴缁撴灉 - public void Face() { - log.info("寮�濮嬫墽琛屼汉鑴歌澶囨娊妫�鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); - //杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜囥�佽溅杈嗗崱鍙h澶噓rl鍙敤鎬� - FaceDeviceSamplingParam param = new FaceDeviceSamplingParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()); - JSONObject jsonObject = hkClient.FaceDeviceSampling(param); - List<FaceDeviceSamplingResult> faceList = getDataList(jsonObject, FaceDeviceSamplingResult.class, "浜鸿劯璁惧鎶芥鎸囨爣鐩戞祴缁撴灉鏁版嵁涓虹┖"); - if (!CollectionUtils.isEmpty(faceList)) { - //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 - Query query = new Query(Criteria - .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); - DeleteResult result = mongoTemplate.remove(query, PicAccessResult.class); - //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(faceList); - } - //TODO:宸ュ崟澶勭悊 - log.info("缁撴潫浜鸿劯璁惧鎶芥鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); - } - //杞﹁締璁惧鎶芥鎸囨爣鐩戞祴缁撴灉 - public void FaceDeviceSamplingTask() { + public void vehicleDeviceSamplingTask() { log.info("寮�濮嬫墽琛岃溅杈嗚澶囨娊妫�鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); //杞﹁締鍗″彛淇℃伅閲囬泦鍑嗙‘鐜囥�佽溅杈嗗崱鍙h澶噓rl鍙敤鎬� - FaceDeviceSamplingParam param = new FaceDeviceSamplingParam(); - param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()); - JSONObject jsonObject = hkClient.FaceDeviceSampling(param); - List<FaceDeviceSamplingResult> faceList = getDataList(jsonObject, FaceDeviceSamplingResult.class, "浜鸿劯璁惧鎶芥鎸囨爣鐩戞祴缁撴灉鏁版嵁涓虹┖"); + VehicleDeviceSamplingParam param = new VehicleDeviceSamplingParam(); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + param.setDataType(ApiConstants.HK_DataType_CAR); + List<VehicleDeviceSamplingResult> faceList = HkApiUtil.sendAPI(host,appKey,appSecret,"/api/dqd/service/rs/v2/data/vehSampleAmount/query", param, VehicleDeviceSamplingResult.class); + if (!CollectionUtils.isEmpty(faceList)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria - .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); - DeleteResult result = mongoTemplate.remove(query, PicAccessResult.class); + .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + DeleteResult result = mongoTemplate.remove(query, VehicleDeviceSamplingResult.class); + faceList.stream().forEach(item -> { + if (Objects.nonNull(item.getExternalIndexCode())) { + item.setNo(item.getExternalIndexCode()); + } + }); + pointService.setDeviceTagByGB(faceList); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insert(faceList); + mongoTemplate.insertAll(faceList); } - //TODO:宸ュ崟澶勭悊 + log.info("缁撴潫杞﹁締璁惧鎶芥鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); + } + + + //浜鸿劯璁惧鎶芥鎸囨爣鐩戞祴缁撴灉 + public void faceDeviceSamplingTask() { + log.info("寮�濮嬫墽琛屼汉鑴歌澶囨娊妫�鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); + FaceDeviceSamplingParam param = new FaceDeviceSamplingParam(); + param.setPageNo(ApiConstants.PageNo); + param.setPageSize(ApiConstants.HKPageSize); + param.setDate(DateUtils.getDate()); + 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); + //瀛樻斁鍦╩ongo涓� + mongoTemplate.insertAll(faceList); + } log.info("缁撴潫浜鸿劯璁惧鎶芥鎸囨爣鐩戞祴缁撴灉鏁版嵁鍚屾"); } //瑙f瀽鏁版嵁 - private <T> List<T> getDataList(JSONObject faceJsonObject, Class<T> resultClass, String message) { - if (faceJsonObject != null && ApiConstants.successCode.equals(faceJsonObject.getString("code"))) { - JSONObject data = faceJsonObject.getJSONObject("data"); + private <T> List<T> getDataList(JSONObject jsonObject, Class<T> resultClass, String message) { + if (jsonObject != null && ApiConstants.HKSuccessCode.equals(jsonObject.getString("code"))) { + log.info("鏁版嵁鏍煎紡"+jsonObject); + JSONObject data = jsonObject.getJSONObject("data"); if (data == null) { - log.error(message, faceJsonObject); + log.error(message, jsonObject); return null; } List<T> list = data.getList("list", resultClass); if (CollectionUtils.isEmpty(list)) { log.error(message, data); return null; - } - for (T t : list) { - if (t instanceof BaseResult) { - ((BaseResult) t).setCreateTime(new Date()); - } } return list; } else { -- Gitblit v1.8.0