From 4d5325bf1b526b425f34342e44d49be1ccc95549 Mon Sep 17 00:00:00 2001 From: gengby <858962040@qq.com> Date: Mon, 8 Sep 2025 09:19:32 +0800 Subject: [PATCH] =?UTF-8?q?rev:=E7=94=9F=E7=AE=94AGV=E5=8F=96=E8=B4=A7?= =?UTF-8?q?=E6=89=8B=E6=8C=81=E6=94=BE=E8=A1=8C=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java | 6 ++++++ .../nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java index d16ea07c0..2164750fb 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java @@ -85,6 +85,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic String error_type = "agv_error_type"; private Instruction instruction; + private Boolean is_arrive_get = false; + private synchronized void setErrorInfo(int error, String error_code, String error_message) { this.error = error; this.error_code = error_code; @@ -218,6 +220,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (ObjectUtil.isNotEmpty(device.getExtraValue().get("wait")) && StrUtil.equals("true", device.getExtraValue().get("wait").toString()) && StrUtil.equals(task.getTask_type(), "1")) { + this.is_arrive_get = true; if (standardOrdinarySiteDeviceDriver.getOption() == 1) { String task_code = standardOrdinarySiteDeviceDriver.getTask_code(); log.info("当前任务号{},创建任务号{}", task.getTask_code(), task_code); @@ -307,6 +310,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic && StrUtil.equals(task.getTask_type(), "1")) { // standardOrdinarySiteDeviceDriver.setOption(0); + this.is_arrive_get = false; data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } else { @@ -370,6 +374,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (ObjectUtil.isNotEmpty(standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait")) && StrUtil.equals("true", standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString()) && StrUtil.equals(task.getTask_type(), "1")) { + this.is_arrive_get = true; if (standardOrdinarySiteDeviceDriver.getOption() == 1) { standardOrdinarySiteDeviceDriver.setAgvphase(0); String task_code = standardOrdinarySiteDeviceDriver.getTask_code(); @@ -436,6 +441,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic && StrUtil.equals("true", standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString()) && StrUtil.equals(task.getTask_type(), "1")) { standardOrdinarySiteDeviceDriver.setOption(0); + this.is_arrive_get = false; } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java index ce08aabd1..f59d95f11 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java @@ -1151,8 +1151,8 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { AgvNdcTwoDeviceDriver agvNdcTwoDeviceDriver; if (device.getDeviceDriver() instanceof AgvNdcTwoDeviceDriver) { agvNdcTwoDeviceDriver = (AgvNdcTwoDeviceDriver) device.getDeviceDriver(); - int phase = agvNdcTwoDeviceDriver.getPhase(); - if (phase == 0x03 || phase == 0x05 || phase == 0x08) { + Boolean is_arrive_get = agvNdcTwoDeviceDriver.getIs_arrive_get(); + if (is_arrive_get) { StandardOrdinarySiteDeviceDriver standardOrdinarySiteDeviceDriver; Device device_k = deviceAppService.findDeviceByCode(device_code + "_K"); Device device_m = deviceAppService.findDeviceByCode(device_code + "_M");