From 6f5c384b7f838f35e3da4db129a57c76cd54d508 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 04 十一月 2024 10:51:51 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java                 |   17 +++++++++++++----
 zy-acs-common/src/main/java/com/zy/acs/common/constant/RedisConstant.java                     |    2 ++
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MaintainScheduler.java         |   19 ++++++++++++-------
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/AStarNavigateService.java |    4 ++++
 4 files changed, 31 insertions(+), 11 deletions(-)

diff --git a/zy-acs-common/src/main/java/com/zy/acs/common/constant/RedisConstant.java b/zy-acs-common/src/main/java/com/zy/acs/common/constant/RedisConstant.java
index 7256a12..4d8f80c 100644
--- a/zy-acs-common/src/main/java/com/zy/acs/common/constant/RedisConstant.java
+++ b/zy-acs-common/src/main/java/com/zy/acs/common/constant/RedisConstant.java
@@ -15,6 +15,8 @@
 
     public static final String AGV_DATA_FLAG = "AGV_DATA_FLAG";
 
+    public static final String AGV_TO_STANDBY_FLAG = "AGV_TO_STANDBY_FLAG";
+
     public static final String AGV_FAULT_REPORT_FLAG = "AGV_FAULT_REPORT_FLAG";
 
     public static final String DIGITAL_AGV_FLAG = "DIGITAL_AGV_FLAG";
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MaintainScheduler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MaintainScheduler.java
index 53943f5..a0769c3 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MaintainScheduler.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MaintainScheduler.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.zy.acs.common.enums.AgvStatusType;
+import com.zy.acs.common.utils.RedisSupport;
 import com.zy.acs.framework.common.DateUtils;
 import com.zy.acs.manager.core.service.MainService;
 import com.zy.acs.manager.manager.entity.*;
@@ -24,6 +25,8 @@
 @Slf4j
 @Component
 public class MaintainScheduler {
+
+    private final RedisSupport redis = RedisSupport.defaultRedisSupport;
 
     @Autowired
     private AgvService agvService;
@@ -122,14 +125,16 @@
                 continue;
             }
             // the time between the latest task and now that be must more that 10 seconds
-            Integer intervalOfAutoStandby = configService.getVal("intervalOfAutoStandby", Integer.class);
-            if (null != intervalOfAutoStandby && intervalOfAutoStandby > 0) {
-                Task latestTask = taskService.findLatestTask(agv.getId(), null);
-                if (null != latestTask) {
-                    long seconds = DateUtils.diffToSeconds(latestTask.getUpdateTime(), new Date());
-                    if (seconds < intervalOfAutoStandby) { continue; }
+//            if (!Optional.ofNullable((Boolean) redis.getObject(RedisConstant.AGV_TO_STANDBY_FLAG, agv.getUuid())).orElse(false)) {
+                Integer intervalOfAutoStandby = configService.getVal("intervalOfAutoStandby", Integer.class);
+                if (null != intervalOfAutoStandby && intervalOfAutoStandby > 0) {
+                    Task latestTask = taskService.findLatestTask(agv.getId(), null);
+                    if (null != latestTask) {
+                        long seconds = DateUtils.diffToSeconds(latestTask.getUpdateTime(), new Date());
+                        if (seconds < intervalOfAutoStandby) { continue; }
+                    }
                 }
-            }
+//            }
 
             mainService.buildMinorTask(agv, agvDetail, TaskTypeType.TO_STANDBY, null);
         }
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
index ba7f2b2..cb6fd28 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -3,9 +3,6 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.zy.acs.framework.common.Cools;
-import com.zy.acs.framework.common.SnowflakeIdWorker;
-import com.zy.acs.framework.exception.CoolException;
 import com.zy.acs.common.domain.AgvAction;
 import com.zy.acs.common.domain.AgvActionItem;
 import com.zy.acs.common.domain.AgvProtocol;
@@ -14,8 +11,15 @@
 import com.zy.acs.common.domain.protocol.AGV_70_UP;
 import com.zy.acs.common.domain.protocol.IMessageBody;
 import com.zy.acs.common.domain.protocol.action.*;
-import com.zy.acs.common.enums.*;
+import com.zy.acs.common.enums.AgvBackpackType;
+import com.zy.acs.common.enums.AgvCompleteType;
+import com.zy.acs.common.enums.AgvDirectionType;
+import com.zy.acs.common.enums.AgvSpeedType;
+import com.zy.acs.common.utils.RedisSupport;
 import com.zy.acs.common.utils.Utils;
+import com.zy.acs.framework.common.Cools;
+import com.zy.acs.framework.common.SnowflakeIdWorker;
+import com.zy.acs.framework.exception.CoolException;
 import com.zy.acs.manager.common.domain.TaskDto;
 import com.zy.acs.manager.common.exception.BusinessException;
 import com.zy.acs.manager.common.utils.CommonUtil;
@@ -46,6 +50,7 @@
 @Component("mainService")
 public class MainService {
 
+    private final RedisSupport redis = RedisSupport.defaultRedisSupport;
     private static final int LOCK_TIMEOUT = 5;
     private final ReentrantLock lock = new ReentrantLock(Boolean.TRUE);
 
@@ -650,6 +655,10 @@
                     break;
             }
 
+//            if (taskType.equals(TaskTypeType.TO_STANDBY)) {
+//                redis.setObject(RedisConstant.AGV_TO_STANDBY_FLAG, agv.getUuid(), false);
+//            }
+
             return true;
         } catch (Exception e) {
             log.error("mainService.buildMinorTask[task]", e);
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/AStarNavigateService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/AStarNavigateService.java
index d643bfb..2e41211 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/AStarNavigateService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/AStarNavigateService.java
@@ -1,5 +1,6 @@
 package com.zy.acs.manager.core.service.astart;
 
+import com.zy.acs.common.utils.RedisSupport;
 import com.zy.acs.framework.common.Cools;
 import com.zy.acs.manager.common.utils.MapDataUtils;
 import com.zy.acs.manager.core.domain.Lane;
@@ -22,6 +23,8 @@
  */
 @Service
 public class AStarNavigateService {
+
+    private final RedisSupport redis = RedisSupport.defaultRedisSupport;
 
     public static final boolean OPEN_TURN_COST_WEIGHT = Boolean.FALSE;
 
@@ -131,6 +134,7 @@
                         if (!laneVehicle.equals(DynamicNodeType.ACCESS.val)) {
                             if (!laneVehicle.equals(agvNo)) {
                                 otherVehicleCount++;
+//                                redis.setObject(RedisConstant.AGV_TO_STANDBY_FLAG, laneVehicle, true, 30);
                             }
                         }
                     }

--
Gitblit v1.9.1