From 128e2bab52442abb344147d7fe13a64cdaecef3e Mon Sep 17 00:00:00 2001 From: loujf Date: Tue, 19 Jul 2022 18:59:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=81=E7=BE=8E=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StandardCoveyorControlDeviceDriver.java | 9 +++++++++ .../acs/instruction/service/InstructionService.java | 7 +++++++ .../service/impl/InstructionServiceImpl.java | 12 ++++++++++++ 3 files changed, 28 insertions(+) diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/standard_conveyor_control/StandardCoveyorControlDeviceDriver.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/standard_conveyor_control/StandardCoveyorControlDeviceDriver.java index f65f5a8..50e6e07 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/standard_conveyor_control/StandardCoveyorControlDeviceDriver.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/standard_conveyor_control/StandardCoveyorControlDeviceDriver.java @@ -927,6 +927,15 @@ public synchronized boolean instruction_apply(String container_code) throws Exce instdto.setPriority(priority); instdto.setInstruction_status("0"); instdto.setExecute_device_code(start_point_code); + + //查询关联设备数量 + List list = deviceservice.queryLinkDeviceByCode(next_point_code); + //查询此终点的指令数量 + List byNextDeviceCode = instructionService.findByNextDeviceCode(next_device_code); + if (byNextDeviceCode.size() >= list.size()) { + return true; + } + instructionService.create(instdto); Instruction instdto2 = new Instruction(); diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/instruction/service/InstructionService.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/instruction/service/InstructionService.java index a409ec4..00406e8 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/instruction/service/InstructionService.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/instruction/service/InstructionService.java @@ -239,6 +239,13 @@ public interface InstructionService { */ Instruction findByStartCodeNextCode(String srart_code,String next_code); + /** + * 根据终点设备从缓存查询指令 + * + * @return Instruction + */ + List findByNextDeviceCode(String next_code); + /** * 根据设备缓存查询 * diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java index c227ee0..1cb4277 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java @@ -1620,6 +1620,18 @@ public class InstructionServiceImpl implements InstructionService, ApplicationAu return null; } + @Override + public List findByNextDeviceCode(String next_code) { + List list = new ArrayList<>(); + for (int i = 0; i < this.instructions.size(); i++) { + Instruction inst = instructions.get(i); + if (StrUtil.equals(next_code,inst.getNext_device_code())) { + list.add(inst); + } + } + return list; + } + @Override public Instruction findByStartCodeNextCodeJM(String start_code,String next_code) {