From eecb2ea9e734ac8db520efe09c07480e082f7898 Mon Sep 17 00:00:00 2001 From: ls <1793460677@qq.com> Date: Tue, 24 Jun 2025 10:29:05 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A0=86=E5=9E=9B=E6=9C=BA=E6=B8=85?= =?UTF-8?q?=E7=82=B9=E4=BD=8D=E6=A0=A1=E9=AA=8C=E3=80=81=E5=BC=80=E5=A7=8B?= =?UTF-8?q?=E7=BA=BF=E7=A8=8B=E4=B8=8D=E5=88=A4=E6=96=AD=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nl/acs/auto/run/AutoRunServiceImpl.java | 28 +++++++++---------- .../StandardStackerDeviceDriver.java | 3 +- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/AutoRunServiceImpl.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/AutoRunServiceImpl.java index a5708c7ee..494f4827f 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/AutoRunServiceImpl.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/AutoRunServiceImpl.java @@ -34,17 +34,18 @@ public class AutoRunServiceImpl implements AutoRunService, ApplicationAutoInitia */ private List thread_autoRun = new ArrayList(); /** - * key + * key */ private List autoRun_code_index = new ArrayList(); /** - * 运行线程 + * 运行线程 */ private List threads = new ArrayList(); /** - * key + * key */ private List thread_code_index = new ArrayList(); + @Override public synchronized void startThread(String threadCode) { Thread thread = this.getThreadByCode(threadCode); @@ -65,24 +66,23 @@ public class AutoRunServiceImpl implements AutoRunService, ApplicationAutoInitia Thread thread = this.getThreadByCode(threadCode); if (thread == null) { throw new BadRequestException(LangProcess.msg("error_isNull", threadCode)); - } else if (!thread.isAlive()) { - throw new BadRequestException(LangProcess.msg("error_status", threadCode)); - } else { + } + try { AbstractAutoRunnable runable = this.getRunablebyCode(threadCode); runable.stop(); thread.stop(); thread.interrupt(); - - try { - thread.join(); - } catch (InterruptedException arg4) { - arg4.printStackTrace(); - } - + thread.join(); runable.setStopMessage("人工停止"); runable.setStopTime(new Date()); - + } catch (Exception arg4) { + arg4.printStackTrace(); + throw new BadRequestException(LangProcess.msg("error_status", threadCode)); } + + + + } @Override diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/StandardStackerDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/StandardStackerDeviceDriver.java index e98565683..944995011 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/StandardStackerDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/StandardStackerDeviceDriver.java @@ -358,7 +358,8 @@ public class StandardStackerDeviceDriver extends AbstractOpcDeviceDriver impleme if (!command.equals(last_command)) { requireSucess = false; - if (command == 0) { + Instruction byCodeFromCache = instructionService.findByCodeFromCache(String.valueOf(task)); + if (command == 0 && byCodeFromCache==null) { clearWrite(); } }