From 0819b960e2e268a88baa5eff771f2d85e090da1a Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Sat, 8 Mar 2025 00:16:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=92=E5=BA=8F=E6=8E=A8=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/busi/IMesProductionCustomContextStepService.java | 6 +++--- .../ext/mes/pcn/api/busi/IMesQueueOrderPushService.java | 2 +- .../serviceimpl/busi/MesQueueOrderPushService.java | 8 ++++---- .../step/MesSendEquipParamsCmdStepService.java | 2 +- .../step/MesWorkOrderQueueAcceptStepService.java | 4 ++-- .../step/MesWorkOrderQueueSavePushStepService.java | 2 +- .../context/MesProductionCustomContextStepService.java | 15 +++++++-------- .../i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java | 2 ++ 8 files changed, 21 insertions(+), 20 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionCustomContextStepService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionCustomContextStepService.java index 8bf2905..d4a7f08 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionCustomContextStepService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionCustomContextStepService.java @@ -104,12 +104,12 @@ public interface IMesProductionCustomContextStepService { void removePackageDataContext(StationRequestBean reqBean); @ApiOperation(value = "获取排序线工单队列推送锁数据") - List getSortQueuePushLockContext(String orgainzeCode, String workCenterCode); + String getSortQueuePushLockContext(StationRequestBean reqBean, String queuePushId); @ApiOperation(value = "保存排序线工单队列推送锁数据") - Boolean dispatchSortQueuePushLockContext(String organizeCode, String workCenterCode, Object queuePushId); + Boolean dispatchSortQueuePushLockContext(StationRequestBean reqBean, String queuePushId); @ApiOperation(value = "删除排序线工单队列推送锁数据") - void removeSortQueuePushLockContext(String orgainzeCode, String workCenterCode, String queuePushId); + void removeSortQueuePushLockContext(StationRequestBean reqBean, String queuePushId); } diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesQueueOrderPushService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesQueueOrderPushService.java index ecd5f85..fd12741 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesQueueOrderPushService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesQueueOrderPushService.java @@ -39,6 +39,6 @@ public interface IMesQueueOrderPushService { ListPager queryQueueOrderPushListPager(Map paramMap, List pushSourceCodeList, Pager pager); @ApiOperation(value = "根据条件修改生产队列工位推送信息状态") - void saveQueueOrderPushStatusByDdlPackBean(DdlPackBean packBean, String userInfo, Integer queueStatus); + void saveQueueOrderPushStatusByDdlPackBean(DdlPackBean packBean, String userInfo, Integer queueStatus, String targerWorkCellCode); } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesQueueOrderPushService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesQueueOrderPushService.java index 5904686..3477019 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesQueueOrderPushService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesQueueOrderPushService.java @@ -12,7 +12,6 @@ import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; -import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesQueueOrderPush; import cn.estsh.i3plus.pojo.mes.bean.MesQueueOrderPushCellCfg; import cn.estsh.i3plus.pojo.mes.repository.MesQueueOrderPushCellCfgRepository; @@ -168,11 +167,12 @@ public class MesQueueOrderPushService implements IMesQueueOrderPushService { //根据条件修改生产队列工位推送信息状态 @Override - public void saveQueueOrderPushStatusByDdlPackBean(DdlPackBean packBean, String userInfo, Integer queueStatus) { + public void saveQueueOrderPushStatusByDdlPackBean(DdlPackBean packBean, String userInfo, Integer queueStatus, String targerWorkCellCode) { if (StringUtils.isEmpty(userInfo) || StringUtils.isEmpty(queueStatus)) return; queueOrderPushRepository.updateByPropertiesNoSync( - new String[]{MesPcnExtConstWords.QUEUE_STATUS, MesPcnExtConstWords.MODIFY_USER, MesPcnExtConstWords.MODIFY_DATE_TIME, MesPcnExtConstWords.SYSTEM_SYNC_STATUS, MesPcnExtConstWords.SYSTEM_SYNC_DATE_TIME}, - new Object[]{queueStatus, userInfo, TimeTool.getNowTime(true), CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), MesPcnExtConstWords.EMPTY}, + new String[]{MesPcnExtConstWords.QUEUE_STATUS, MesPcnExtConstWords.TARGET_WORK_CELL_CODE, + MesPcnExtConstWords.MODIFY_USER, MesPcnExtConstWords.MODIFY_DATE_TIME, MesPcnExtConstWords.SYSTEM_SYNC_STATUS, MesPcnExtConstWords.SYSTEM_SYNC_DATE_TIME}, + new Object[]{queueStatus, targerWorkCellCode, userInfo, TimeTool.getNowTime(true), CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), MesPcnExtConstWords.EMPTY}, packBean); } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesSendEquipParamsCmdStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesSendEquipParamsCmdStepService.java index 29563e8..e1c9cf3 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesSendEquipParamsCmdStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesSendEquipParamsCmdStepService.java @@ -140,7 +140,7 @@ public class MesSendEquipParamsCmdStepService extends BaseStepService { List sourceIdList = null; for (MesProdRuleContext prodRuleContext : prodRuleContextList) { if (StringUtils.isEmpty(prodRuleContext.getAssemblyDataJson())) continue; - List itemIdList = prodRuleContext.getSortAssemblyDataContext().stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getSourceId()))).map(MesProductionAssemblySortContext::getSourceId).collect(Collectors.toList()); + List itemIdList = prodRuleContext.getSortAssemblyDataContext().stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getPid()))).map(MesProductionAssemblySortContext::getPid).collect(Collectors.toList()); if (CollectionUtils.isEmpty(itemIdList)) continue; if (CollectionUtils.isEmpty(sourceIdList)) sourceIdList = new ArrayList<>(); sourceIdList.addAll(itemIdList); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderQueueAcceptStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderQueueAcceptStepService.java index 87013a7..7c0888b 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderQueueAcceptStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderQueueAcceptStepService.java @@ -131,8 +131,8 @@ public class MesWorkOrderQueueAcceptStepService extends BaseStepService { } else { //当前遍历中的代码考虑加锁; 获取不到锁的情况下退出循环 if (!tryLock(reqBean.getWorkCenterCode(), queueOrderPush.getPushSourceCode())) break; - List queuePushIdList = productionCustomContextStepService.getSortQueuePushLockContext(reqBean.getOrganizeCode(), reqBean.getWorkCenterCode()); - if (!CollectionUtils.isEmpty(queuePushIdList) && queuePushIdList.contains(queueOrderPush.getId().toString())) continue; + productionCustomContextStepService.getSortQueuePushLockContext(reqBean, reqBean.getWorkCenterCode()); +// if (!CollectionUtils.isEmpty(queuePushIdList) && queuePushIdList.contains(queueOrderPush.getId().toString())) continue; } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderQueueSavePushStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderQueueSavePushStepService.java index 6026fbd..312366c 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderQueueSavePushStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderQueueSavePushStepService.java @@ -89,7 +89,7 @@ public class MesWorkOrderQueueSavePushStepService extends BaseStepService { DdlPackBean packBean = DdlPackBean.getDdlPackBean(reqBean.getOrganizeCode()); if (idList.size() == 1) DdlPreparedPack.getNumEqualPack(idList.get(0), MesPcnExtConstWords.ID, packBean); else DdlPreparedPack.getInPackList(idList, MesPcnExtConstWords.ID, packBean); - queueOrderPushService.saveQueueOrderPushStatusByDdlPackBean(packBean, reqBean.getUserInfo(), MesExtEnumUtil.QUEUE_ORDER_STATUS.FINISH.getValue()); + queueOrderPushService.saveQueueOrderPushStatusByDdlPackBean(packBean, reqBean.getUserInfo(), MesExtEnumUtil.QUEUE_ORDER_STATUS.FINISH.getValue(), reqBean.getWorkCellCode()); } //写入队列信息,默认状态为已完成 diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/context/MesProductionCustomContextStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/context/MesProductionCustomContextStepService.java index c092b52..6b161f0 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/context/MesProductionCustomContextStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/context/MesProductionCustomContextStepService.java @@ -297,25 +297,24 @@ public class MesProductionCustomContextStepService extends BaseStepService imple } //排序线工单队列推送锁数据KEY 【PS:生产线级别】 - private String getSortQueuePushLockContextKey(String orgainzeCode, String workCenterCode) { return new StringJoiner(MesPcnExtConstWords.COLON).add(orgainzeCode).add(workCenterCode).add(MesPcnExtConstWords.QUEUE_PUSH_LOCK_CONTEXT).toString(); } + private String getSortQueuePushLockContextKey(StationRequestBean reqBean) { return new StringJoiner(MesPcnExtConstWords.COLON).add(reqBean.getOrganizeCode()).add(reqBean.getWorkCenterCode()).add(MesPcnExtConstWords.QUEUE_PUSH_LOCK_CONTEXT).toString(); } //获取排序线工单队列推送锁数据 @Override - public List getSortQueuePushLockContext(String orgainzeCode, String workCenterCode) { - return getFsmBusiList(orgainzeCode, getSortQueuePushLockContextKey(orgainzeCode, workCenterCode)); + public String getSortQueuePushLockContext(StationRequestBean reqBean, String queuePushId) { + return getFsmBusiData(reqBean.getOrganizeCode(), getSortQueuePushLockContextKey(reqBean), queuePushId); } //保存排序线工单队列推送锁数据 @Override - public Boolean dispatchSortQueuePushLockContext(String organizeCode, String workCenterCode, Object queuePushId) { - if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(workCenterCode) || StringUtils.isEmpty(queuePushId)) return false; - return dispatchFsmBusiList(organizeCode, getSortQueuePushLockContextKey(organizeCode, workCenterCode), queuePushId); + public Boolean dispatchSortQueuePushLockContext(StationRequestBean reqBean, String queuePushId) { + return dispatchFsmBusiList(reqBean.getOrganizeCode(), getSortQueuePushLockContextKey(reqBean), queuePushId); } //删除排序线工单队列推送锁数据 @Override - public void removeSortQueuePushLockContext(String orgainzeCode, String workCenterCode, String queuePushId) { - removeFsmBusiList(orgainzeCode, getSortQueuePushLockContextKey(orgainzeCode, workCenterCode), queuePushId); + public void removeSortQueuePushLockContext(StationRequestBean reqBean, String queuePushId) { + removeFsmBusiList(reqBean.getOrganizeCode(), getSortQueuePushLockContextKey(reqBean), queuePushId); } } diff --git a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java index 24497c4..1da25f7 100644 --- a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java +++ b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java @@ -359,6 +359,8 @@ public class MesPcnExtConstWords { public static final String SHIPPING_GROUP_NAME = "shippingGroupName"; //队列状态 public static final String QUEUE_STATUS = "queueStatus"; + //目标工位 + public static final String TARGET_WORK_CELL_CODE = "targetWorkCellCode"; //工艺顺序号 public static final String PROCESS_SEQ = "processSeq"; //推送来源代码