From a56cbc8a929232b039f137fc51b5af27f40b2822 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期四, 01 八月 2024 15:33:25 +0800
Subject: [PATCH] feat:异常恢复监控

---
 ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java |   40 ++++++++++++++--------------------------
 1 files changed, 14 insertions(+), 26 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
index 8485cc6..6a4f2a8 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
@@ -24,16 +24,16 @@
 import com.ycl.utils.SecurityUtils;
 import com.ycl.utils.redis.RedisCache;
 import com.ycl.utils.uuid.IdUtils;
-import constant.PointConfigConstants;
-import enumeration.general.*;
+import enumeration.general.NotifyTypeEnum;
+import enumeration.general.UrgentLevelEnum;
+import enumeration.general.WorkOrderDistributeWayEnum;
+import enumeration.general.WorkOrderStatusEnum;
 import lombok.RequiredArgsConstructor;
-import org.apache.commons.lang3.ArrayUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.Assert;
-import org.springframework.util.CollectionUtils;
 import org.springframework.util.StringUtils;
 
 import java.time.LocalDateTime;
@@ -41,7 +41,6 @@
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
-import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 
 /**
@@ -272,44 +271,37 @@
     public Result distributeFast(DistributeWorkOrderVO data) {
         // 鑾峰彇褰撳墠鏃堕棿
         LocalDateTime now = LocalDateTime.now(ZoneId.systemDefault());
+        data.setEnd(now);
         switch (data.getFastWay()) {
             case LAST_HALF_HOUR:
                 data.setStart(now.minusMinutes(30));
-                data.setEnd(now);
                 break;
             case LAST_HOUR:
                 data.setStart(now.minusHours(1));
-                data.setEnd(now);
                 break;
             case LAST_TWO_HOUR:
                data.setStart(now.minusHours(2));
-               data.setEnd(now);
                break;
             case LAST_DAY:
                 data.setStart(now.minusDays(1));
-                data.setEnd(now);
                 break;
            }
 
         // 鏌ヨ绗﹀悎鏉′欢鐨勫伐鍗�
-        List<Integer> ids = new LambdaQueryChainWrapper<>(baseMapper)
+        List<WorkOrder> list = new LambdaQueryChainWrapper<>(baseMapper)
+                .select(WorkOrder::getId, WorkOrder::getPointId)
                 .eq(WorkOrder::getStatus, WorkOrderStatusEnum.WAIT_DISTRIBUTE)
                 .eq(Objects.nonNull(data.getUnitId()), WorkOrder::getUnitId, data.getUnitId())
                 .eq(WorkOrder::getErrorType, data.getErrorType())
                 .between(WorkOrder::getCreateTime, data.getStart(), data.getEnd())
                 .orderByDesc(WorkOrder::getCreateTime)
                 .last("limit " + data.getFastNumLimit())
-                .list()
-                .stream()
-                .map(WorkOrder::getId)
-                .toList();
+                .list();
+        List<Integer> ids = list.stream().map(WorkOrder::getId).toList();
+        List<Integer> pointIds = list.stream().map(WorkOrder::getPointId).toList();
 
-        if (ids.isEmpty()) {
-            return Result.error("娌℃湁绗﹀悎鏉′欢鐨勫伐鍗�");
-        }
-        if (!getDistributeLock()) {
-            return Result.error("姝ゅ埢鏈変汉涓嬪彂涓紝涓洪伩鍏嶅啿绐侊紝璇风◢鍚庨噸璇�");
-        }
+        if (ids.isEmpty()) { return Result.error("娌℃湁绗﹀悎鏉′欢鐨勫伐鍗�"); }
+        if (!getDistributeLock()) { return Result.error("姝ゅ埢鏈変汉涓嬪彂涓紝涓洪伩鍏嶅啿绐侊紝璇风◢鍚庨噸璇�"); }
         try {
             new LambdaUpdateChainWrapper<>(baseMapper)
                     .set(WorkOrder::getStatus, WorkOrderStatusEnum.DISTRIBUTED)
@@ -327,9 +319,7 @@
     @Override
     public Result selectedIdsDistribute(DistributeWorkOrderQuery query) {
         WorkOrderDistributeWayEnum distributeWayEnum = WorkOrderDistributeWayEnum.SELECTED_DISTRIBUTE;
-        if (!getDistributeLock()) {
-            return Result.error("姝ゅ埢鏈変汉涓嬪彂涓紝涓洪伩鍏嶅啿绐侊紝璇风◢鍚庨噸璇�");
-        }
+        if (!getDistributeLock()) { return Result.error("姝ゅ埢鏈変汉涓嬪彂涓紝涓洪伩鍏嶅啿绐侊紝璇风◢鍚庨噸璇�"); }
         try {
             if (query.getIds().isEmpty()) {
                 query.setIds(new LambdaQueryChainWrapper<>(baseMapper)
@@ -342,9 +332,7 @@
                         .collect(Collectors.toList()));
                 distributeWayEnum = WorkOrderDistributeWayEnum.ALL_DISTRIBUTE;
             }
-            if (query.getIds().isEmpty()) {
-                return Result.error("娌℃湁宸ュ崟寰呬笅鍙�");
-            }
+            if (query.getIds().isEmpty()) { return Result.error("娌℃湁宸ュ崟寰呬笅鍙�"); }
             new LambdaUpdateChainWrapper<>(baseMapper)
                     .set(WorkOrder::getStatus, WorkOrderStatusEnum.DISTRIBUTED)
                     .in(WorkOrder::getId, query.getIds())

--
Gitblit v1.8.0