From 6f8fed7ea2b545966206744022d8e73e0af717db Mon Sep 17 00:00:00 2001 From: "USER-20220102CG\\noblelift" <546428999@qq.com> Date: Fri, 3 Feb 2023 21:15:09 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B7=9F=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SiemensConveyorDeviceDriver.java | 4 ++++ .../driver/ExecutableDeviceDriver.java | 14 ++++++++------ .../service/impl/InstructionServiceImpl.java | 6 ++++-- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java index c7a1d51e5..4f6e427d5 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java @@ -891,6 +891,10 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme this.instruction_require_time = date; if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { Instruction instruction = instructionService.findByCode(String.valueOf(task)); + if(ObjectUtil.isEmpty(instruction)){ + message = "指令号"+task+"未找到对应指令"; + return; + } message = "申请AGV搬运任务中..."; JSONObject apply = new JSONObject(); apply.put("device_code", device_code); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/driver/ExecutableDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/driver/ExecutableDeviceDriver.java index 743d1e290..326d18963 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/driver/ExecutableDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/driver/ExecutableDeviceDriver.java @@ -5,13 +5,15 @@ import org.nl.acs.device_driver.DeviceDriver; public interface ExecutableDeviceDriver extends DeviceDriver { default void executeAuto() { - try { +// try { +// this.execute(); +// } catch (Throwable var6) { +// String message = "线程调用异常:" + var6.getMessage(); +// Log.error(message); +// } finally { +// } this.execute(); - } catch (Throwable var6) { - String message = "线程调用异常:" + var6.getMessage(); - Log.error(message); - } finally { - } + } void execute(); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java index aa00242ee..4c688395a 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java @@ -2,6 +2,7 @@ package org.nl.acs.instruction.service.impl; +import cn.hutool.core.collection.ListUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; @@ -55,6 +56,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.*; +import java.util.concurrent.CopyOnWriteArrayList; import java.util.regex.Pattern; import java.util.stream.Collectors; @@ -68,7 +70,7 @@ import java.util.stream.Collectors; @Slf4j public class InstructionServiceImpl implements InstructionService, ApplicationAutoInitial { - List instructions = new ArrayList(); + List instructions = new CopyOnWriteArrayList(); @Autowired DeviceAppService deviceAppService; @@ -1218,7 +1220,7 @@ public class InstructionServiceImpl implements InstructionService, ApplicationAu public Instruction findByDeviceCodeFromCache(String devicecode) { List instructionList = instructions; - Collections.sort(instructionList, new Comparator() { + ListUtil.sort(instructionList, new Comparator() { @Override public int compare(Instruction o1, Instruction o2) { return o1.getCreate_time().compareTo(o2.getCreate_time());