From e32fc76d4159be3e9a6fc37f64d84c5942abe136 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 13 八月 2024 09:48:13 +0800 Subject: [PATCH] 空单生成空指针异常处理 --- ycl-server/src/main/java/com/ycl/task/UYTask.java | 49 +++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 43 insertions(+), 6 deletions(-) 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 7028c1a..e51c2a6 100644 --- a/ycl-server/src/main/java/com/ycl/task/UYTask.java +++ b/ycl-server/src/main/java/com/ycl/task/UYTask.java @@ -4,6 +4,9 @@ import com.mongodb.client.result.DeleteResult; import com.ycl.feign.UYClient; import com.ycl.platform.domain.param.UY.*; +import com.ycl.platform.domain.result.UY.OneMachineFileResult; +import com.ycl.platform.domain.result.UY.OsdMonitorResult; +import com.ycl.platform.domain.result.UY.RecordMetaDSumResult; import com.ycl.platform.domain.result.UY.*; import com.ycl.platform.service.ITMonitorService; import com.ycl.platform.service.IYwThresholdService; @@ -51,16 +54,51 @@ @Value("${youYun.passwd}") private String passwd; + // 鍥惧儚妫�娴� + public void imageDetection() { + log.info("寮�濮嬫墽琛屽浘鍍忔娴嬫暟鎹悓姝�"); + ImageDetectionParam param = new ImageDetectionParam(); + param.setPageNum(ApiConstants.PageNo); + param.setPageSize(ApiConstants.PageSize); + param.setArealayerno(ApiConstants.AreaNo); + JSONObject jsonObject = uyClient.imageDetection(param); + if (jsonObject != null) { + log.info("鏁版嵁鏍煎紡" + jsonObject); + Integer statusCode = jsonObject.getInteger("statusCode"); + if (ApiConstants.UYSuccessCode.equals(statusCode)) { + JSONObject data = jsonObject.getJSONObject("data"); + if (data != null) { + List<ImageDetectionResult> records = data.getList("records", ImageDetectionResult.class); + if (!CollectionUtils.isEmpty(records)) { + //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 + Query query = new Query(Criteria + .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + DeleteResult result = mongoTemplate.remove(query, QueryVqdResult.class); + //瀛樻斁鍦╩ongo涓� + mongoTemplate.insertAll(records); + } else { + log.error("鍥惧儚鐩戞祴鏁版嵁涓虹┖{}", data); + } + } else { + log.error("鍥惧儚鐩戞祴鏁版嵁涓虹┖{}", jsonObject); + } + } else { + log.error("鍥惧儚鐩戞祴璇锋眰澶辫触{}", jsonObject); + } + } else { + log.error("鍥惧儚鐩戞祴鏁版嵁涓虹┖"); + } + log.info("缁撴潫鎵ц鍥惧儚鐩戞祴鏁版嵁鍚屾"); + } + //涓�鏈轰竴妗� public void monitorTask() { - //涓�鏈轰竴妗e悎鏍肩巼 // 涓�鏈轰竴妗f敞鍐岀巼 // 妗f鑰冩牳姣� log.info("寮�濮嬫墽琛屼竴鏈轰竴妗f暟鎹悓姝�"); OneMachineFileParam param = new OneMachineFileParam(); JSONObject jsonObject = uyClient.oneMachineFile(param); if (jsonObject != null) { - log.info("鏁版嵁鏍煎紡" + jsonObject); JSONObject cameraList = jsonObject.getJSONObject("CameraList"); if (cameraList != null) { List<OneMachineFileResult> data = cameraList.getList("data", OneMachineFileResult.class); @@ -92,7 +130,6 @@ param.setPageSize(ApiConstants.PageSize); JSONObject jsonObject = uyClient.monitorQualify(param); if (jsonObject != null) { - log.info("鏁版嵁鏍煎紡" + jsonObject); String code = jsonObject.getString("code"); if (ApiConstants.UYSuccessCodeStr.equals(code)) { JSONObject data = jsonObject.getJSONObject("data"); @@ -130,7 +167,6 @@ param.setIcmpStatus(ApiConstants.UY_OnlineStatus_All); JSONObject jsonObject = uyClient.videoOnline(param); if (jsonObject != null) { - log.info("鏁版嵁鏍煎紡" + jsonObject); Integer statusCode = jsonObject.getInteger("statusCode"); if (ApiConstants.UYSuccessCode.equals(statusCode)) { JSONObject data = jsonObject.getJSONObject("data"); @@ -177,7 +213,7 @@ if (!CollectionUtils.isEmpty(records)) { //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria - .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); + .where("mongoCreateTime").gte(DateUtils.getDayStart(instance.getTime())).lt(DateUtils.getDayEnd(instance.getTime()))); DeleteResult result = mongoTemplate.remove(query, RecordMetaDSumResult.class); //瀛樻斁鍦╩ongo涓� mongoTemplate.insertAll(records); @@ -195,9 +231,10 @@ //瑙嗛鏍囨敞 log.info("寮�濮嬫墽琛岃棰戞爣娉ㄦ暟鎹悓姝�"); OsdMonitorParam param = new OsdMonitorParam(); + param.setPageNum(ApiConstants.PageNo); + param.setPageSize(ApiConstants.PageSize); JSONObject jsonObject = uyClient.osdMonitorList(param, tenantId); if (jsonObject != null) { - log.info("鏁版嵁鏍煎紡" + jsonObject); if (ApiConstants.UYSuccessCodeStr.equals(jsonObject.getString("code"))) { JSONObject data = jsonObject.getJSONObject("data"); if (data != null) { -- Gitblit v1.8.0