From 8762465bbabc087a37aa09630007d8706b5b81c1 Mon Sep 17 00:00:00 2001 From: tuqiang <437016993@qq.com> Date: Thu, 27 Jun 2024 18:48:41 +0800 Subject: [PATCH] =?UTF-8?q?rev:=E4=BC=98=E5=8C=96=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E5=88=86=E5=88=87=E8=A1=8C=E6=9E=B6=E4=BB=BB=E5=8A=A1=E6=8E=92?= =?UTF-8?q?=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SlitTwoManipulatorDeviceDriver.java | 44 +++++++++---------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/two_conveyor/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/two_conveyor/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java index 0d6dfd394..083255ab0 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/two_conveyor/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/two_conveyor/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java @@ -403,41 +403,39 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl TaskDto task = null; for (int i = 0; i < getDeviceCodeList.size(); i++) { String startDeviceCode = getDeviceCodeList.get(i); - List taskDtos = taskserver.queryTaskByDeviceCodeAndStatus(startDeviceCode); + List taskDtos = taskserver.queryTaskByDeviceCodeAndStatus2(startDeviceCode); if (ObjectUtil.isNotEmpty(taskDtos)) { - //按照优先级排序 优先级相等按照创建时间排序 - taskDtos = this.sortTask(taskDtos); - TaskDto taskDto = taskDtos.get(0); - truss_type = taskDto.getTruss_type(); - //查询任务是行架任务 - if (!StrUtil.equals(taskDto.getTask_type(), "6")) { - taskDto = null; - continue; + //按照创建时间排序 + List taskDtoStream = taskDtos.stream().sorted(Comparator.comparing(TaskDto::getCreate_time)).collect(Collectors.toList()); + if (ObjectUtil.isNotEmpty(taskDtoStream)) { + TaskDto taskDto = taskDtoStream.get(0); + this.executeReadyInst(taskDto); } - flag = this.executeReadyInst(taskDto); } else { - List taskDtoList = taskserver.queryTaskByDeviceCode(startDeviceCode); + List taskDtoList = taskserver.findByTrappedManipulatorReady(); if (ObjectUtil.isNotEmpty(taskDtoList)) { - //按照优先级排序 优先级相等按照创建时间排序 - taskDtoList = this.sortTask(taskDtoList); - for (int j = 0; j < taskDtoList.size(); j++) { - task = taskDtoList.get(j); - - // 6 行架任务 - if (ObjectUtil.isNotEmpty(task) && !StrUtil.equals(task.getTask_type(), "6")) { - task = null; - continue; + List taskDtosReady = new ArrayList<>(); + for (TaskDto taskDto1 : taskDtoList) { + if (getDeviceCodeList.contains(taskDto1.getStart_device_code())) { + taskDtosReady.add(taskDto1); } - if (ObjectUtil.isNotEmpty(task)) break; } + //按照优先级排序 优先级相等按照创建时间排序 + taskDtosReady = this.sortTask(taskDtosReady); + task = taskDtosReady.get(0); + } + if (!ObjectUtil.isEmpty(task)) { + break; } } } if (!ObjectUtil.isEmpty(task)) { - flag = this.executeReadyTask(task); + this.executeReadyTask(task); + } else { + notCreateInstMessage = "universal_notCreateInstMessage"; } + return true; } - return flag; } //执行已有就绪指令