diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java index 70a8c19..fcd6d49 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java @@ -250,10 +250,11 @@ public class MesWorkOrderService extends BaseMesService implements if (!Objects.equals(bean.getWorkOrderStatus(), result.getWorkOrderStatus()) && bean.getWorkOrderStatus() == MesExtEnumUtil.ORDER_STATUS.RELEASE.getValue()) { isSavePrintQueue = true; } - //排序工单 关闭工单对列表 + //排序工单关闭 同时关闭 创建状态单工单队列 JIS拉动单 SPS拉动单 目视单打印队列 if (!Objects.equals(bean.getWorkOrderStatus(), result.getWorkOrderStatus()) && MesExtEnumUtil.ORDER_STATUS.CLOSE.getValue() == bean.getWorkOrderStatus() && MesExtEnumUtil.ORDER_TYPE.SORT.getValue() == bean.getWorkOrderType()) { closeMesQueueOrder(bean.getWorkOrderNo(), bean.getOrganizeCode(), AuthUtilExt.getUserName()); closeMesPullingOrderInfo(bean.getWorkOrderNo(), bean.getOrganizeCode(), AuthUtilExt.getUserName()); + closeMesPrintQueue(bean.getWorkOrderNo(), bean.getOrganizeCode(), AuthUtilExt.getUserName()); } result.setWorkOrderStatus(bean.getWorkOrderStatus()); } @@ -2553,6 +2554,16 @@ public class MesWorkOrderService extends BaseMesService implements new Object[]{userName, TimeTool.getNowTime(true), MesExtEnumUtil.PULL_ORDER_STATUS.PULL_ORDER_STATUS_50.getValue()}, packBean); } + private void closeMesPrintQueue(String workOrderNo, String organizeCode, String userName) { + if (StringUtil.isEmpty(workOrderNo) || StringUtil.isEmpty(organizeCode)) return; + DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(workOrderNo, MesExtConstWords.WORK_ORDER_NO, packBean); + DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.PRINT_QUEUE_TYPE.WORK_ORDER_ASSEMBLY.getValue(), MesExtConstWords.PRINT_QUEUE_TYPE, packBean); + printQueueRepository.updateByProperties( + new String[]{MesExtConstWords.MODIFY_USER, MesExtConstWords.MODIFY_DATE_TIME, MesExtConstWords.PRINT_STATUS}, + new Object[]{userName, TimeTool.getNowTime(true), MesExtEnumUtil.PRINT_STATUS.FAILURE.getValue()}, packBean); + } + private MesPrintQueue getMesPrintQuanOrder(String workOrderNo, String organizeCode) { if(StringUtil.isEmpty(workOrderNo) || StringUtil.isEmpty(organizeCode)) return null; DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode); diff --git a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java index 9ce0493..6d38505 100644 --- a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java +++ b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java @@ -191,6 +191,8 @@ public class MesExtConstWords { public static final String PULL_ORDER_TYPE = "pullOrderType"; //拉动单状态 public static final String PULL_ORDER_STATUS = "pullOrderStatus"; + //打印队列类型 + public static final String PRINT_QUEUE_TYPE = "printQueueType"; //时间[开始/结束]条件 public static final String START_TIME_START = "startTimeStart";