From f63b484aa0e1d5856b48482055b560ae60cd9b73 Mon Sep 17 00:00:00 2001 From: loujf Date: Tue, 19 Jul 2022 19:43:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StandardCoveyorControlDeviceDriver.java | 90 +++++++++++++++++++ 1 file changed, 90 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 0222e2d..76a57ef 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 @@ -631,6 +631,21 @@ public synchronized boolean instruction_apply(String container_code) throws Exce if (byNextDeviceCode.size() >= list.size()) { return true; } + + int count = 0; + for (int i = 0; i < list.size(); i++) { + String code = list.get(i); + Device device = deviceAppservice.findDeviceByCode(code); + StandardCoveyorControlDeviceDriver standardCoveyorControlDeviceDriver; + if (device.getDeviceDriver() instanceof StandardCoveyorControlDeviceDriver) { + standardCoveyorControlDeviceDriver = (StandardCoveyorControlDeviceDriver) device.getDeviceDriver(); + if (standardCoveyorControlDeviceDriver.getMove() != 0) count += 1; + } + } + //如果当前关联的设备中都有货的话,就返回 + if (count != 0 && count >= list.size()) { + return true; + } instructionService.create(instdto); Instruction instdto2 = new Instruction(); @@ -680,6 +695,21 @@ public synchronized boolean instruction_apply(String container_code) throws Exce if (byNextDeviceCode.size() >= list.size()) { return true; } + + int count = 0; + for (int i = 0; i < list.size(); i++) { + String code = list.get(i); + Device device = deviceAppservice.findDeviceByCode(code); + StandardCoveyorControlDeviceDriver standardCoveyorControlDeviceDriver; + if (device.getDeviceDriver() instanceof StandardCoveyorControlDeviceDriver) { + standardCoveyorControlDeviceDriver = (StandardCoveyorControlDeviceDriver) device.getDeviceDriver(); + if (standardCoveyorControlDeviceDriver.getMove() != 0) count += 1; + } + } + //如果当前关联的设备中都有货的话,就返回 + if (count != 0 && count >= list.size()) { + return true; + } instructionService.create(instdto); //创建指令后修改任务状态 @@ -719,6 +749,21 @@ public synchronized boolean instruction_apply(String container_code) throws Exce if (byNextDeviceCode.size() >= list.size()) { return true; } + + int count = 0; + for (int i = 0; i < list.size(); i++) { + String code = list.get(i); + Device device = deviceAppservice.findDeviceByCode(code); + StandardCoveyorControlDeviceDriver standardCoveyorControlDeviceDriver; + if (device.getDeviceDriver() instanceof StandardCoveyorControlDeviceDriver) { + standardCoveyorControlDeviceDriver = (StandardCoveyorControlDeviceDriver) device.getDeviceDriver(); + if (standardCoveyorControlDeviceDriver.getMove() != 0) count += 1; + } + } + //如果当前关联的设备中都有货的话,就返回 + if (count != 0 && count >= list.size()) { + return true; + } instructionService.create(instdto); //创建指令后修改任务状态 @@ -957,6 +1002,21 @@ public synchronized boolean instruction_apply(String container_code) throws Exce return true; } + int count = 0; + for (int i = 0; i < list.size(); i++) { + String code = list.get(i); + Device device = deviceAppservice.findDeviceByCode(code); + StandardCoveyorControlDeviceDriver standardCoveyorControlDeviceDriver; + if (device.getDeviceDriver() instanceof StandardCoveyorControlDeviceDriver) { + standardCoveyorControlDeviceDriver = (StandardCoveyorControlDeviceDriver) device.getDeviceDriver(); + if (standardCoveyorControlDeviceDriver.getMove() != 0) count += 1; + } + } + //如果当前关联的设备中都有货的话,就返回 + if (count != 0 && count >= list.size()) { + return true; + } + instructionService.create(instdto); Instruction instdto2 = new Instruction(); @@ -1006,6 +1066,21 @@ public synchronized boolean instruction_apply(String container_code) throws Exce if (byNextDeviceCode.size() >= list.size()) { return true; } + + int count = 0; + for (int i = 0; i < list.size(); i++) { + String code = list.get(i); + Device device = deviceAppservice.findDeviceByCode(code); + StandardCoveyorControlDeviceDriver standardCoveyorControlDeviceDriver; + if (device.getDeviceDriver() instanceof StandardCoveyorControlDeviceDriver) { + standardCoveyorControlDeviceDriver = (StandardCoveyorControlDeviceDriver) device.getDeviceDriver(); + if (standardCoveyorControlDeviceDriver.getMove() != 0) count += 1; + } + } + //如果当前关联的设备中都有货的话,就返回 + if (count != 0 && count >= list.size()) { + return true; + } instructionService.create(instdto); //创建指令后修改任务状态 @@ -1046,6 +1121,21 @@ public synchronized boolean instruction_apply(String container_code) throws Exce if (byNextDeviceCode.size() >= list.size()) { return true; } + + int count = 0; + for (int i = 0; i < list.size(); i++) { + String code = list.get(i); + Device device = deviceAppservice.findDeviceByCode(code); + StandardCoveyorControlDeviceDriver standardCoveyorControlDeviceDriver; + if (device.getDeviceDriver() instanceof StandardCoveyorControlDeviceDriver) { + standardCoveyorControlDeviceDriver = (StandardCoveyorControlDeviceDriver) device.getDeviceDriver(); + if (standardCoveyorControlDeviceDriver.getMove() != 0) count += 1; + } + } + //如果当前关联的设备中都有货的话,就返回 + if (count != 0 && count >= list.size()) { + return true; + } instructionService.create(instdto); //创建指令后修改任务状态