From a5f325a68d5fac46c3e51ea33b5abc6d0a4a7b95 Mon Sep 17 00:00:00 2001 From: "DESKTOP-5DIJMF9\\admin" <2388969634@qq.com> Date: Fri, 14 Feb 2025 14:52:20 +0800 Subject: [PATCH] =?UTF-8?q?opt:=E4=BC=98=E5=8C=96=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acs/service/impl/AcsToWmsServiceImpl.java | 22 ++++++------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index 21ff05b89..6d6a12e2b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -54,6 +54,7 @@ import org.nl.wms.pda.mps.service.ShippingService; import org.nl.wms.pda.mps.service.impl.BakingServiceImpl; import org.nl.wms.pda.st.service.impl.PrintServiceImpl; import org.nl.wms.sch.ComPareUtil; +import org.nl.wms.sch.manage.AbstractAcsTask; import org.nl.wms.sch.manage.TaskStatusEnum; import org.nl.wms.sch.tasks.CutConveyorTask; import org.nl.wms.sch.tasks.EmptyVehicleTask; @@ -211,24 +212,15 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { status = "0"; } // 任务处理类 - try { - Object obj = new Object(); - try { - obj = SpringContextHolder.getBean(Class.forName(processing_class)); - } catch (Exception e) { - Class clz = Class.forName(processing_class); - obj = clz.newInstance(); - } - // 调用每个任务类的forceFinishInst()强制结束方法 - Method m = obj.getClass().getDeclaredMethod("updateTaskStatus", JSONObject.class, String.class); - m.invoke(obj, row, status); - } catch (Exception e) { - WQLObject.getWQLObject("SCH_BASE_Task").update(MapOf.of("remark",DateUtil.now()+"更新"+status+"失败:"+e.getMessage()),"task_id = '" + task_id + "'"); - throw e; - } + AbstractAcsTask abstractTask = (AbstractAcsTask)SpringContextHolder.getBean(Class.forName(taskObj.getString("handle_class"))); + abstractTask.updateTaskStatus(taskObj,status); } else { throw new BadRequestException("任务标识为:" + task_id + "的任务正在操作中!"); } + }catch (Exception ex){ + WQLObject.getWQLObject("SCH_BASE_Task").update(MapOf.of("remark",DateUtil.now()+"更新"+row.getString("task_status")+"失败:"+ex.getMessage()),"task_id = '" + task_id + "'"); + log.error(task_id+"acs更新任务失败:{}", ex); + throw ex; } finally { if (tryLock) { lock.unlock();