From ae95edbd61fa07c47f5a332e7ef9f4bd116602d6 Mon Sep 17 00:00:00 2001 From: mzr Date: Tue, 23 Sep 2025 19:10:49 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=B5=E5=8A=9B=E7=94=B5=E5=AD=90-=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E7=94=9F=E4=BA=A7=E8=AE=A2=E5=8D=95=E5=92=8CBOM?= =?UTF-8?q?=E8=B7=B3=E8=BF=87=E6=9C=9F=E5=88=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pmo/pac0002/bp/rule/AfterDelSyncEpicMesRule.java | 10 ++++++++++ .../pmo/pac0002/bp/rule/util/SyncEpicMesUtil.java | 10 +++++++++- .../bd/bom/bom0202/rule/BomSaveAfterEpicMesRule.java | 5 +++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterDelSyncEpicMesRule.java b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterDelSyncEpicMesRule.java index 9b968634..02e36891 100644 --- a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterDelSyncEpicMesRule.java +++ b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterDelSyncEpicMesRule.java @@ -22,6 +22,7 @@ import nc.vo.pubapp.pattern.exception.ExceptionUtils; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Set; /** * 流程生产订单删除后同步艾普MES @@ -66,7 +67,16 @@ public class AfterDelSyncEpicMesRule implements IRule { // logDl.info("开始同步生产订单到艾普MES系统,符合条件的订单数量: " + filteredOrders.size()); JSONArray jsonArray = new JSONArray(); // 推送到艾普MES系统 + Set billTypeCodes = Set.of( + "55A2-Cxx-01", "55A2-Cxx-18" + ); for (PMOAggVO aggVO : filteredOrders) { + PMOHeadVO headVo = aggVO.getParentVO(); + // 判断订单类型,期初订单不处理 + String vtrantypecode = headVo.getVtrantypecode(); + if (billTypeCodes.contains(vtrantypecode)) { + continue; + } buildSyncData(aggVO, jsonArray); } if (!jsonArray.isEmpty()) { diff --git a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/util/SyncEpicMesUtil.java b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/util/SyncEpicMesUtil.java index deda644a..302c8401 100644 --- a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/util/SyncEpicMesUtil.java +++ b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/util/SyncEpicMesUtil.java @@ -24,6 +24,7 @@ import nccloud.commons.lang.StringUtils; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Set; /** * 流程生产订单审批后推送艾普MES @@ -67,10 +68,18 @@ public class SyncEpicMesUtil { return; } logDl.info("开始同步生产订单到艾普MES系统,符合条件的订单数量: " + filteredOrders.size()); + Set billTypeCodes = Set.of( + "55A2-Cxx-01", "55A2-Cxx-18" + ); JSONArray jsonArray = new JSONArray(); // 推送到艾普MES系统 for (PMOAggVO aggVO : filteredOrders) { PMOHeadVO head = aggVO.getParentVO(); + // 判断订单类型,期初订单不处理 + String vtrantypecode = head.getVtrantypecode(); + if (billTypeCodes.contains(vtrantypecode)) { + continue; + } PMOItemVO[] bodys = aggVO.getChildrenVO(); if (bodys == null || bodys.length == 0) { logDl.error("生产订单 " + head.getVbillcode() + " 没有行信息,跳过同步。"); @@ -93,7 +102,6 @@ public class SyncEpicMesUtil { pushData(codeUrl, jsonArray); } - logDl.info("生产订单同步到艾普MES系统处理完成。"); } diff --git a/uapbd/src/private/nc/bs/bd/bom/bom0202/rule/BomSaveAfterEpicMesRule.java b/uapbd/src/private/nc/bs/bd/bom/bom0202/rule/BomSaveAfterEpicMesRule.java index 255e2d7d..ab27fc70 100644 --- a/uapbd/src/private/nc/bs/bd/bom/bom0202/rule/BomSaveAfterEpicMesRule.java +++ b/uapbd/src/private/nc/bs/bd/bom/bom0202/rule/BomSaveAfterEpicMesRule.java @@ -54,6 +54,11 @@ public class BomSaveAfterEpicMesRule implements IRule { for (AggBomVO vo : useVOs) { // 判断物料的业务单元是否是电力电子公司,不是则跳过 BomVO hvo = (BomVO) vo.getParentVO(); + String hvnote = hvo.getHvnote(); + // 跳过期初的BOM + if ("202509QC".equals(hvnote)) { + continue; + } String pkOrg = (String) hvo.getAttributeValue("pk_org"); String orgCode = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg); if (MyHelper.checkIfDldzOrg(orgCode, configParams)) {