diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_auto_cache_line/HailiangAutoCacheLineDeviceDriver.java b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_auto_cache_line/HailiangAutoCacheLineDeviceDriver.java index 13909923..95c1dd7d 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_auto_cache_line/HailiangAutoCacheLineDeviceDriver.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_auto_cache_line/HailiangAutoCacheLineDeviceDriver.java @@ -449,7 +449,7 @@ public class HailiangAutoCacheLineDeviceDriver extends AbstractOpcDeviceDriver i } else { //如果上述条件不满足 先判断当前缓存线任务号是否为0 //如果为0 且agv上报的指令信息存在,需要下发缓存线对应的任务信息 - if (task == 0 && ObjectUtil.isNotEmpty(inst)) { + if (mode != 0 && task == 0 && ObjectUtil.isNotEmpty(inst)) { instructionService.issuedCacheInfo(inst); this.noFeedAgvMessage = "到达送满框点后下发电气任务信息成功,指令号:" + inst.getInstruction_code() + ",等待AGV再次请求后反馈!"; logServer.deviceExecuteLog(device_code, "", "", "下发电气任务信息成功,指令信息:" + JSON.toJSONString(inst) + ",等待AGV再次请求后反馈!"); @@ -471,6 +471,9 @@ public class HailiangAutoCacheLineDeviceDriver extends AbstractOpcDeviceDriver i if (error == 35) { noFeedMessage += "准备位条码异常,"; } + if (Integer.parseInt(inst.getInstruction_code()) != task) { + noFeedMessage += "AGV上报指令与缓存线任务号不一致,"; + } this.noFeedAgvMessage = this.replace(noFeedMessage); } } @@ -500,16 +503,10 @@ public class HailiangAutoCacheLineDeviceDriver extends AbstractOpcDeviceDriver i this.set(0, 0, null); } else { String noFeedMessage = this.noFeedMessage(); - if (move != 1) { - noFeedMessage += "对接位光电无货,"; - } - if (prepare_ready != 1) { - noFeedMessage += "准备位未就绪,"; - } // if (in_ready != 1) { // noFeedMessage += "对接位入箱未就绪,"; // } - if (error == 35) { + if (error == 34) { noFeedMessage += "准备位条码异常,"; } this.noFeedAgvMessage = this.replace(noFeedMessage); @@ -602,7 +599,7 @@ public class HailiangAutoCacheLineDeviceDriver extends AbstractOpcDeviceDriver i logServer.deviceExecuteLog(device_code, "", "", this.messageInfo(agvphase)); this.set(0, 0, null); } else { - if (task == 0 && ObjectUtil.isNotEmpty(inst)) { + if (mode != 0 && task == 0 && ObjectUtil.isNotEmpty(inst)) { TaskDto taskDto = taskserver.findByCodeFromCache(inst.getTask_code()); if (taskDto != null) { Map issued = instructionService.issued(inst.getInstruction_code(), taskDto.getPriority_floor(), taskDto.getBarcodeArr(), "4", "1"); @@ -638,7 +635,7 @@ public class HailiangAutoCacheLineDeviceDriver extends AbstractOpcDeviceDriver i NDCSocketConnectionAutoRun.write(data); Map map = new LinkedHashMap<>(); map.put("to_agv_get_finish", "1"); - if (task == 0 || Integer.parseInt(inst.getTask_code()) == task) { + if (task == 0 || Integer.parseInt(inst.getInstruction_code()) == task) { try { Thread.sleep(100); } catch (InterruptedException e) { diff --git a/wcs/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoCreateInst.java b/wcs/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoCreateInst.java index 59916b00..46fa5662 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoCreateInst.java +++ b/wcs/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoCreateInst.java @@ -94,7 +94,7 @@ public class AutoCreateInst { Device device = deviceAppService.findDeviceByCode(put_device_code); if (device != null && device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); - if (hailiangAutoCacheLineDeviceDriver.getMode() != 1 || hailiangAutoCacheLineDeviceDriver.getTask() != 0 || instructionService.findInstByDeviceCode(put_device_code) != null) { + if (hailiangAutoCacheLineDeviceDriver.getItemProtocol().getOpcIntegerValue("mode") != 1 || hailiangAutoCacheLineDeviceDriver.getItemProtocol().getOpcIntegerValue("task") != 0) { continue; } } @@ -105,7 +105,7 @@ public class AutoCreateInst { Device device = deviceAppService.findDeviceByCode(start_device_code); if (device != null && device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); - if (hailiangAutoCacheLineDeviceDriver.getMode() != 1 || hailiangAutoCacheLineDeviceDriver.getTask() != 0 || instructionService.findInstByDeviceCode(start_device_code) != null) { + if (hailiangAutoCacheLineDeviceDriver.getItemProtocol().getOpcIntegerValue("mode") != 1 || hailiangAutoCacheLineDeviceDriver.getItemProtocol().getOpcIntegerValue("task") != 0) { continue; } } @@ -143,7 +143,7 @@ public class AutoCreateInst { Device device = deviceAppService.findDeviceByCode(taskDto1.getPut_device_code()); if (device != null && device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); - if (hailiangAutoCacheLineDeviceDriver.getMode() != 1 || hailiangAutoCacheLineDeviceDriver.getTask() != 0 || instructionService.findInstByDeviceCode(taskDto1.getPut_device_code()) != null) { + if (hailiangAutoCacheLineDeviceDriver.getItemProtocol().getOpcIntegerValue("mode") != 1 || hailiangAutoCacheLineDeviceDriver.getItemProtocol().getOpcIntegerValue("task") != 0) { continue; } }