From 0a0e43ed0571221724cbc5308a2aa568e551dad6 Mon Sep 17 00:00:00 2001 From: mzr Date: Tue, 30 Sep 2025 11:12:27 +0800 Subject: [PATCH 1/2] =?UTF-8?q?MaterialPfxxPlugin-=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bs/bd/pfxx/plugin/MaterialPfxxPlugin.java | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/uapbd/src/private/nc/bs/bd/pfxx/plugin/MaterialPfxxPlugin.java b/uapbd/src/private/nc/bs/bd/pfxx/plugin/MaterialPfxxPlugin.java index b4bf5fbd..09fe9c63 100644 --- a/uapbd/src/private/nc/bs/bd/pfxx/plugin/MaterialPfxxPlugin.java +++ b/uapbd/src/private/nc/bs/bd/pfxx/plugin/MaterialPfxxPlugin.java @@ -1,18 +1,11 @@ package nc.bs.bd.pfxx.plugin; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; - -import com.yonyou.cloud.utils.CollectionUtils; - import nc.bs.dao.BaseDAO; import nc.bs.dao.DAOException; import nc.bs.framework.common.NCLocator; import nc.bs.logging.Logger; import nc.bs.pfxx.ISwapContext; import nc.itf.bd.material.baseinfo.IMaterialBaseInfoService; -import nc.jdbc.framework.processor.ColumnListProcessor; import nc.itf.bd.material.plan.IMaterialPlanQueryService; import nc.itf.bd.material.plan.IMaterialPlanService; import nc.itf.bd.material.stock.IMaterialStockQueryService; @@ -31,9 +24,12 @@ import nc.vo.pfxx.util.PfxxPluginUtils; import nc.vo.pub.BusinessException; import nc.vo.pub.VOStatus; import nc.vo.pub.lang.UFBoolean; - import nccloud.commons.lang.StringUtils; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + /** * 物料基本信息外部交互平台导入 * @@ -214,8 +210,7 @@ public class MaterialPfxxPlugin extends nc.bs.pfxx.plugin.AbstractPfxxPlugin { } private MaterialVO getUpdateVO(MaterialVO materialVO, String pk) throws BusinessException { - MaterialVO oldVO = (MaterialVO) this.getBaseDAO().retrieveByPK(MaterialVO.class, pk, - new String[] { MaterialVO.CREATOR, MaterialVO.CREATIONTIME, MaterialVO.PK_SOURCE, MaterialVO.VERSION, MaterialVO.LATEST, MaterialVO.ENABLESTATE }); + MaterialVO oldVO = (MaterialVO) this.getBaseDAO().retrieveByPK(MaterialVO.class, pk); if (oldVO == null) { throw new BusinessException(nc.vo.ml.NCLangRes4VoTransl.getNCLangRes().getStrByID("bdpub", "0bdpub0057") /* @res "该数据已被删除" */); @@ -232,7 +227,14 @@ public class MaterialPfxxPlugin extends nc.bs.pfxx.plugin.AbstractPfxxPlugin { materialVO.setMaterialconvert(this.getMaterialConvertVOs(materialVO)); materialVO.setMaterialtaxtype(this.getMaterialTaxTypeVOs(materialVO)); materialVO.setIsfeature(UFBoolean.FALSE); - + // 泰开专项,修改时,不清空自定义项的值 + for (int i = 1; i <= 50; i++) { + String defKey = "def" + i; + //如果没传自定义项,拿原来的自定义项的值 + if (materialVO.getAttributeValue(defKey) == null) { + materialVO.setAttributeValue(defKey,oldVO.getAttributeValue(defKey));; + } + } return materialVO; } From 581bba9e3dcb43b5b5f8712b4eddc8b662213662 Mon Sep 17 00:00:00 2001 From: mzr Date: Tue, 30 Sep 2025 11:14:24 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E9=AB=98=E5=8E=8BMES-=E7=89=A9=E6=96=99?= =?UTF-8?q?=E6=8E=A8=E9=80=81-=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../material/baseinfo/MaterialToGyMesListener.java | 12 +++++++----- .../material/listener/MaterialToGyMesListener.java | 14 ++++++++------ 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/uapbd/src/private/nc/impl/bd/material/baseinfo/MaterialToGyMesListener.java b/uapbd/src/private/nc/impl/bd/material/baseinfo/MaterialToGyMesListener.java index b61d9cab..e41207a8 100644 --- a/uapbd/src/private/nc/impl/bd/material/baseinfo/MaterialToGyMesListener.java +++ b/uapbd/src/private/nc/impl/bd/material/baseinfo/MaterialToGyMesListener.java @@ -114,11 +114,13 @@ public class MaterialToGyMesListener implements IBusinessListener { singleObj.put("mainWarehouse", stockMap.get("pk_stordoc")); // 主仓库 singleObj.put("reservation", stockMap.get("remain")); // 预留 singleObj.put("virtualItem", isvirtual.toString()); // 虚项 - singleObj.put("productionDepartment", prodMap.get("deptCode")); // 生产部门编码 - singleObj.put("matchingComponents", prodMap.get("iscreatesonprodorder")); // 配套子件 - singleObj.put("issuance", prodMap.get("issend")); // 发料 - singleObj.put("backflushMethod", prodMap.get("conversemethod")); // 倒冲方式 - singleObj.put("postCompletionProcessing", prodMap.get("wghxcl")); // 完工后续处理 + if (prodMap != null && !prodMap.isEmpty()) { + singleObj.put("productionDepartment", prodMap.get("deptCode")); // 生产部门编码 + singleObj.put("matchingComponents", prodMap.get("iscreatesonprodorder")); // 配套子件 + singleObj.put("issuance", prodMap.get("issend")); // 发料 + singleObj.put("backflushMethod", prodMap.get("conversemethod")); // 倒冲方式 + singleObj.put("postCompletionProcessing", prodMap.get("wghxcl")); // 完工后续处理 + } singleObj.put("bipCreateBy", creatorName); // 创建人 dataArr.add(singleObj); /** diff --git a/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToGyMesListener.java b/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToGyMesListener.java index 07d1a802..169f6392 100644 --- a/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToGyMesListener.java +++ b/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToGyMesListener.java @@ -149,11 +149,13 @@ public class MaterialToGyMesListener implements IBusinessListener { singleObj.put("mainWarehouse", stockMap.get("pk_stordoc")); // 主仓库 singleObj.put("reservation", stockMap.get("remain")); // 预留 singleObj.put("virtualItem", isvirtual.toString()); // 虚项 - singleObj.put("productionDepartment", prodMap.get("deptCode")); // 生产部门编码 - singleObj.put("matchingComponents", prodMap.get("iscreatesonprodorder")); // 配套子件 - singleObj.put("issuance", prodMap.get("issend")); // 发料 - singleObj.put("backflushMethod", prodMap.get("conversemethod")); // 倒冲方式 - singleObj.put("postCompletionProcessing", prodMap.get("wghxcl")); // 完工后续处理 + if (prodMap != null && !prodMap.isEmpty()) { + singleObj.put("productionDepartment", prodMap.get("deptCode")); // 生产部门编码 + singleObj.put("matchingComponents", prodMap.get("iscreatesonprodorder")); // 配套子件 + singleObj.put("issuance", prodMap.get("issend")); // 发料 + singleObj.put("backflushMethod", prodMap.get("conversemethod")); // 倒冲方式 + singleObj.put("postCompletionProcessing", prodMap.get("wghxcl")); // 完工后续处理 + } singleObj.put("bipCreateBy", creatorName); // 创建人 dataArr.add(singleObj); /** @@ -240,7 +242,7 @@ public class MaterialToGyMesListener implements IBusinessListener { } private Map getProdInfo(String pkMaterial) throws BusinessException { - String sql = "SELECT b.code deptCode, a.iscreatesonprodorder, a.issend, a.conversemethod, a.converstime, a.wghxcl" + + String sql = "SELECT b.code deptCode, a.iscreatesonprodorder, a.issend, a.conversemethod, a.converstime, a.wghxcl" + " pk_materialprod " + "FROM " + " bd_materialprod a" +