From c83101eb62f5d4906b9c01ceea6b21a37f9e84d8 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期二, 18 十一月 2025 09:24:53 +0800
Subject: [PATCH] bug修复
---
ycl-server/src/main/java/com/ycl/platform/service/impl/UYErrorTypeCheckServiceImpl.java | 57 ++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 40 insertions(+), 17 deletions(-)
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/UYErrorTypeCheckServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/UYErrorTypeCheckServiceImpl.java
index d238b64..2495202 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/UYErrorTypeCheckServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/UYErrorTypeCheckServiceImpl.java
@@ -3,7 +3,9 @@
import com.ycl.platform.controller.YwThresholdController;
import com.ycl.platform.domain.entity.WorkOrder;
import com.ycl.platform.domain.entity.YwThreshold;
+import com.ycl.platform.domain.result.HK.SnapshotDataMonitorResult;
import com.ycl.platform.domain.result.UY.*;
+import com.ycl.platform.mapper.WorkOrderMapper;
import com.ycl.platform.service.IYwThresholdService;
import com.ycl.platform.service.UYErrorTypeCheckService;
import com.ycl.platform.service.WorkOrderService;
@@ -17,6 +19,8 @@
import enumeration.general.WorkOrderStatusEnum;
import lombok.Data;
import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
@@ -33,10 +37,12 @@
*/
@Service
@RequiredArgsConstructor
+@Slf4j
public class UYErrorTypeCheckServiceImpl implements UYErrorTypeCheckService {
private final WorkOrderService workOrderService;
private final IYwThresholdService ywThresholdService;
+ private final WorkOrderMapper workOrderMapper;
/**
* 鍥惧儚妫�娴嬬敓鎴愬伐鍗�
@@ -52,27 +58,27 @@
WorkOrder workOrder = new WorkOrder();
// 淇″彿缂哄け
if (-1 == item.getSigna1()) {
- this.genWorkOrder(workOrder, ErrorType.SIGNAL_LOSS, item.getDeviceId());
+ this.genWorkOrder(workOrder, ErrorType.ABNORMAL_PIC, item.getDeviceId());
}
// 鐢婚潰鍋忚壊
if (-1 == item.getColor()) {
- this.genWorkOrder(workOrder, ErrorType.SCREEN_COLOR_DEVIATION, item.getDeviceId());
+ this.genWorkOrder(workOrder, ErrorType.ABNORMAL_PIC, item.getDeviceId());
}
// 闆姳骞叉壈
if (-1 == item.getSnow()) {
- this.genWorkOrder(workOrder, ErrorType.SNOW_STORM, item.getDeviceId());
+ this.genWorkOrder(workOrder, ErrorType.ABNORMAL_PIC, item.getDeviceId());
}
// 鏉$汗骞叉壈
if (-1 == item.getStripe()) {
- this.genWorkOrder(workOrder, ErrorType.STRIPE_INTERFERENCE, item.getDeviceId());
+ this.genWorkOrder(workOrder, ErrorType.ABNORMAL_PIC, item.getDeviceId());
}
// 鐢婚潰閬尅
if (-1 == item.getShade()) {
- this.genWorkOrder(workOrder, ErrorType.SCREEN_OCCLUSION, item.getDeviceId());
+ this.genWorkOrder(workOrder, ErrorType.ABNORMAL_PIC, item.getDeviceId());
}
// 娓呮櫚搴﹀紓甯�
if (-1 == item.getBlur()) {
- this.genWorkOrder(workOrder, ErrorType.ABNORMAL_CLARITY, item.getDeviceId());
+ this.genWorkOrder(workOrder, ErrorType.ABNORMAL_PIC, item.getDeviceId());
}
// // 浜害寮傚父
// if (-1 == item.getLight()) {
@@ -117,16 +123,31 @@
@Override
public void videoOnlineCheck(List<VideoOnlineResult> dataList) {
- List<WorkOrder> workOrderList = dataList.stream().map(item -> {
- WorkOrder workOrder = new WorkOrder();
- if (ApiConstants.UY_OnlineSite_Offline.equals(item.getStatus())) {
- this.genWorkOrder(workOrder, ErrorType.DEVICE_OFFLINE, item.getDeviceId());
- }
-// else if (0 == item.getStatus()) {
-// this.genWorkOrder(workOrder, ErrorType.UNKNOWN, item.getDeviceId());
-// }
- return workOrder;
- }).collect(Collectors.toList());
+ //鏌ヨ鏁版嵁搴撳凡瀛樺湪鐨勭绾垮伐鍗曡幏鍙杋p闆嗗悎锛屽墧闄�
+ List<String> ips = workOrderMapper.getOfflineWorkOrder();
+ List<WorkOrder> workOrderList = dataList.stream()
+ .filter(item -> CollectionUtils.isEmpty(ips) || !ips.contains(item.getIpAddr()))
+ .map(item -> {
+ WorkOrder workOrder = new WorkOrder();
+ if (ApiConstants.UY_OnlineSite_Offline.equals(item.getStatus())) {
+ this.genWorkOrder(workOrder, ErrorType.DEVICE_OFFLINE, item.getDeviceId());
+ }
+ return workOrder;
+ }).collect(Collectors.toList());
+ workOrderService.innerAddWorkOrder(workOrderList);
+ }
+
+ @Override
+ public void hkOnlineCheck(List<SnapshotDataMonitorResult> dataList) {
+ //鏌ヨ鏁版嵁搴撳凡瀛樺湪鐨勭绾垮伐鍗曡幏鍙杋p闆嗗悎锛屽墧闄�
+ List<String> ips = workOrderMapper.getOfflineWorkOrder();
+ List<WorkOrder> workOrderList = dataList.stream()
+ .filter(item -> CollectionUtils.isEmpty(ips) || !ips.contains(item.getIp()))
+ .map(item -> {
+ WorkOrder workOrder = new WorkOrder();
+ this.genWorkOrder(workOrder, ErrorType.DEVICE_OFFLINE, item.getExternalIndexCode());
+ return workOrder;
+ }).collect(Collectors.toList());
workOrderService.innerAddWorkOrder(workOrderList);
}
@@ -164,10 +185,12 @@
// }
long checkTime = item.getCheckTime().getTime();
long osdTime = item.getSetTime().getTime();
- Long timeDiff = (checkTime - osdTime) / 1000;
+ Long timeDiff = Math.abs((checkTime - osdTime) / 1000);
ywThresholdService.check(YwThreadConstants.Video_DiffTime, timeDiff, item.getDeviceNo(), ywThresholdMap, workOrder, CompareType.MORE_THAN_EQ, ErrorType.CLOCK_SKEW.getValue());
return workOrder;
}).collect(Collectors.toList());
+
+ log.error("osdCheck鑾峰緱鎻掑叆宸ュ崟:{}",workOrderList);
workOrderService.innerAddWorkOrder(workOrderList);
}
--
Gitblit v1.8.0