From d3ffbcc22bb108b53f6eef1ff9d18f0a9c3c8dfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=97=AD=E6=98=8E=5C73939?= <739390650@QQ.COM> Date: Fri, 17 Oct 2025 15:49:31 +0800 Subject: [PATCH] =?UTF-8?q?opt:=E8=BE=93=E9=80=81=E7=BA=BF=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../agv/ndctwo/AgvNdcTwoDeviceDriver.java | 14 +++++------ .../service/quartz/task/AutoCreateInst.java | 23 ++++++++++--------- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/agv/ndctwo/AgvNdcTwoDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/agv/ndctwo/AgvNdcTwoDeviceDriver.java index e89e651..56e6023 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/agv/ndctwo/AgvNdcTwoDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/agv/ndctwo/AgvNdcTwoDeviceDriver.java @@ -234,12 +234,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic } else if (device.getDeviceDriver() instanceof BeltConveyorDeviceDriver) { //到达取货点 入库 beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) device.getDeviceDriver(); - if (beltConveyorDeviceDriver.getAction() == 1 && beltConveyorDeviceDriver.getMode() == 2 && beltConveyorDeviceDriver.getError() == 0&& beltConveyorDeviceDriver.getMove() == 1) { + if (beltConveyorDeviceDriver.getType() != 2 && beltConveyorDeviceDriver.getAction() == 1 && beltConveyorDeviceDriver.getMode() == 2 && beltConveyorDeviceDriver.getError() == 0&& beltConveyorDeviceDriver.getMove() == 1) { data = ndcAgvService.sendAgvOneModeInst(phase, index, 0); } else { LuceneLogDto logDto = LuceneLogDto.builder() .device_code(beltConveyorDeviceDriver.getDevice_code()) - .content("未给agv进入信号原因是:" + beltConveyorDeviceDriver.getDevice_code() + "动作信号不为1或者工作模式不为2或者有报警,当前的指令号为:" + inst.getInstruction_code()) + .content("未给agv进入信号原因是:" + beltConveyorDeviceDriver.getDevice_code() + "出入库信号为2或动作信号不为1或者工作模式不为2或者有报警,当前的指令号为:" + inst.getInstruction_code()) .build(); logDto.setLog_level(4); luceneExecuteLogService.deviceExecuteLog(logDto); @@ -319,7 +319,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic standardOrdinarySiteDeviceDriver.setInst(inst); } else if (device.getDeviceDriver() instanceof BeltConveyorDeviceDriver) { beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) device.getDeviceDriver(); - if (beltConveyorDeviceDriver.getAction() == 2 && beltConveyorDeviceDriver.getMode() == 2 && beltConveyorDeviceDriver.getError() == 0) { + if (beltConveyorDeviceDriver.getMode() == 2 && beltConveyorDeviceDriver.getError() == 0) { List list1 = new ArrayList(); Map map = new HashMap(); map.put("code", "to_command"); @@ -330,7 +330,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic } else { LuceneLogDto logDto = LuceneLogDto.builder() .device_code(beltConveyorDeviceDriver.getDevice_code()) - .content("未给agv离开信号原因是:" + beltConveyorDeviceDriver.getDevice_code() + "动作信号不为2或者工作模式不为2或者有报警,当前的指令号为:" + inst.getInstruction_code()) + .content("未给agv离开信号原因是:" + beltConveyorDeviceDriver.getDevice_code() + "工作模式不为2或者有报警,当前的指令号为:" + inst.getInstruction_code()) .build(); logDto.setLog_level(4); luceneExecuteLogService.deviceExecuteLog(logDto); @@ -399,12 +399,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic } else if (device.getDeviceDriver() instanceof BeltConveyorDeviceDriver) { beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) device.getDeviceDriver(); - if (beltConveyorDeviceDriver.getAction() == 1 && beltConveyorDeviceDriver.getMode() == 2 && beltConveyorDeviceDriver.getError() == 0&&beltConveyorDeviceDriver.getMove()==0) { + if (beltConveyorDeviceDriver.getType() == 2 && beltConveyorDeviceDriver.getAction() == 2 && beltConveyorDeviceDriver.getMode() == 2 && beltConveyorDeviceDriver.getError() == 0&&beltConveyorDeviceDriver.getMove()==0) { data = ndcAgvService.sendAgvOneModeInst(phase, index, 0); } else { LuceneLogDto logDto = LuceneLogDto.builder() .device_code(beltConveyorDeviceDriver.getDevice_code()) - .content("未给agv进入信号原因是:" + beltConveyorDeviceDriver.getDevice_code() + "动作信号不为1或者工作模式不为2或者有报警,当前的指令号为:" + inst.getInstruction_code()) + .content("未给agv进入信号原因是:" + beltConveyorDeviceDriver.getDevice_code() + "输送线不是出库模式或动作信号不为1或者工作模式不为2或者有报警,当前的指令号为:" + inst.getInstruction_code()) .build(); logDto.setLog_level(4); luceneExecuteLogService.deviceExecuteLog(logDto); @@ -496,7 +496,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic } else { LuceneLogDto logDto = LuceneLogDto.builder() .device_code(beltConveyorDeviceDriver.getDevice_code()) - .content("未给agv离开信号原因是:" + beltConveyorDeviceDriver.getDevice_code() + "动作信号不为2或者工作模式不为2或者有报警,当前的指令号为:" + inst.getInstruction_code()) + .content("未给agv离开信号原因是:" + beltConveyorDeviceDriver.getDevice_code() + "工作模式不为2或者有报警,当前的指令号为:" + inst.getInstruction_code()) .build(); logDto.setLog_level(4); luceneExecuteLogService.deviceExecuteLog(logDto); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCreateInst.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCreateInst.java index e447a2f..7cd04de 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCreateInst.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCreateInst.java @@ -138,15 +138,16 @@ public class AutoCreateInst { } else { next_point_code = next_device_code; } - // BeltConveyorDeviceDriver beltConveyorDeviceDriver; - // if (nextdevice.getDeviceDriver() instanceof BeltConveyorDeviceDriver) { - // beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) nextdevice.getDeviceDriver(); - // if (beltConveyorDeviceDriver.getType() != 2) { - // beltConveyorDeviceDriver.writing("to_command","7"); - // log.info("当前输送线出入库信号不为出库"); - // continue; - // } - // } + + BeltConveyorDeviceDriver beltConveyorDeviceDriver; + if (nextdevice.getDeviceDriver() instanceof BeltConveyorDeviceDriver) { + beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) nextdevice.getDeviceDriver(); + if (beltConveyorDeviceDriver.getType() != 2) { + beltConveyorDeviceDriver.writing("to_command","7"); + log.info("当前输送线出入库信号不为出库"); + continue; + } + } Instruction instdto = new Instruction(); @@ -198,9 +199,9 @@ public class AutoCreateInst { try { instructionService.create(instdto); if (nextdevice.getDeviceDriver() instanceof BeltConveyorDeviceDriver) { - BeltConveyorDeviceDriver beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) nextdevice.getDeviceDriver(); + beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) nextdevice.getDeviceDriver(); //满足出库,查询当前出库任务,+1后返回给 - if (beltConveyorDeviceDriver.getAction() == 2 && beltConveyorDeviceDriver.getMode() == 2 + if (beltConveyorDeviceDriver.getAction() == 2 && beltConveyorDeviceDriver.getMode() == 2 && beltConveyorDeviceDriver.getError() == 0 && beltConveyorDeviceDriver.getMove() == 0) { // 使用同步块确保操作原子性 synchronized (beltConveyorDeviceDriver) {