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 6d6a12e2b..b2513121a 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 @@ -83,7 +83,7 @@ import java.util.stream.Collectors; @Slf4j public class AcsToWmsServiceImpl implements AcsToWmsService { - private static Interner Heap_Lock = Interners.newWeakInterner(); + private static Map Task_Status_Convers = MapOf.of("1",TaskStatusEnum.EXECUTING.getCode(),"2",TaskStatusEnum.FINISHED.getCode(),"3","0"); private final RawAssistIStorService rawAssistIStorService; @@ -195,25 +195,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { if (StrUtil.isEmpty(processing_class)) { throw new BadRequestException("当前任务的处理类未找到!"); } - //1:执行中,2:完成 ,3:acs取消 - String acs_task_status = row.getString("task_status"); - String car_no = row.getString("car_no"); - if (StrUtil.isNotEmpty(car_no)) { - WQLObject.getWQLObject("SCH_BASE_Task").update(MapOf.of("car_no", car_no),"task_id = '" + task_id + "'"); - } - String status = ""; - if ("1".equals(acs_task_status)) { - status = TaskStatusEnum.EXECUTING.getCode(); - } - if ("2".equals(acs_task_status)) { - status = TaskStatusEnum.FINISHED.getCode(); - } - if ("3".equals(acs_task_status)) { - status = "0"; - } - // 任务处理类 AbstractAcsTask abstractTask = (AbstractAcsTask)SpringContextHolder.getBean(Class.forName(taskObj.getString("handle_class"))); - abstractTask.updateTaskStatus(taskObj,status); + abstractTask.updateTaskStatus(taskObj,Task_Status_Convers.get(row.getString("task_status"))); } else { throw new BadRequestException("任务标识为:" + task_id + "的任务正在操作中!"); } @@ -221,8 +204,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { 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) { + }finally { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallEmpReelTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallEmpReelTask.java index 91ca32a83..54ac8813e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallEmpReelTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallEmpReelTask.java @@ -72,7 +72,6 @@ public class CallEmpReelTask extends AbstractAcsTask { } @Override - @Transactional(rollbackFor = Exception.class) public void updateTaskStatus(JSONObject taskObj, String status) { WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); // 任务表 WQLObject ivtTab = WQLObject.getWQLObject("ST_IVT_CoolPointIvt"); // 冷却区库存表 diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/EmptyVehicleTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/EmptyVehicleTask.java index a855f141c..ef4b2eee3 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/EmptyVehicleTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/EmptyVehicleTask.java @@ -78,7 +78,6 @@ public class EmptyVehicleTask extends AbstractAcsTask { } @Override - @Transactional(rollbackFor = Exception.class) public void updateTaskStatus(JSONObject taskObj, String status) { WQLObject point_table = WQLObject.getWQLObject("SCH_BASE_Point"); WQLObject struct_table = WQLObject.getWQLObject("ST_IVT_StructAttr"); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql index 02da64dfd..23396f964 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql @@ -273,7 +273,7 @@ ios.input_time <= 输入.end_time ENDOPTION ) ios2 - INNER JOIN ( + LEFT JOIN ( SELECT dis.iostorinv_id FROM @@ -372,7 +372,7 @@ ios.input_time <= 输入.end_time ENDOPTION ) ios2 - INNER JOIN ( + LEFT JOIN ( SELECT dis.iostorinv_id FROM diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql index d286d06f6..6ab99b36d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql @@ -158,7 +158,7 @@ dtl.iostorinv_id, dtl.vbeln ) c ON ios.iostorinv_id = c.iostorinv_id - inner JOIN ( + LEFT JOIN ( SELECT dis.iostorinv_id FROM @@ -268,7 +268,7 @@ dtl.iostorinv_id, dtl.vbeln ) c ON ios.iostorinv_id = c.iostorinv_id - inner JOIN ( + LEFT JOIN ( SELECT dis.iostorinv_id FROM