From 71aefb6f4ba01f2a95f770af2c69b628cd08a8fa Mon Sep 17 00:00:00 2001 From: mzr Date: Mon, 21 Jul 2025 18:56:20 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=B5=E5=8A=9B=E7=94=B5=E5=AD=90-=E7=89=A9?= =?UTF-8?q?=E6=96=99-=E8=89=BE=E6=99=AEMES-=E7=89=A9=E6=96=99=E7=B1=BB?= =?UTF-8?q?=E5=9E=8BERP=E5=8F=96=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../listener/MaterialToEpicMesListener.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToEpicMesListener.java b/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToEpicMesListener.java index e7d56e6..7a58b72 100644 --- a/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToEpicMesListener.java +++ b/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToEpicMesListener.java @@ -14,6 +14,7 @@ import nc.bs.uapbd.util.ThirdPartyPostRequestUtil; import nc.jdbc.framework.processor.MapProcessor; import nc.vo.bd.material.MaterialVO; import nc.vo.bd.material.marbasclass.MarBasClassVO; +import nc.vo.bd.material.stock.MaterialStockVO; import nc.vo.org.FactoryVO; import nc.vo.pub.BusinessException; @@ -71,7 +72,7 @@ public class MaterialToEpicMesListener implements IBusinessListener { String mrlTypeCOde = MyHelper.transferField(MarBasClassVO.getDefaultTableName(), MarBasClassVO.CODE, MarBasClassVO.PK_MARBASCLASS, pk_marbasclass); // 计量单位 String pkMaterial = vo.getPk_material(); - Map unitMap = getUnitInfo(pkMaterial); + Map unitMap = getGoodsInfo(pkMaterial); // 1=未启用;2=已启用;3=已停用; Integer enablestate = vo.getEnablestate(); @@ -89,7 +90,7 @@ public class MaterialToEpicMesListener implements IBusinessListener { singleObj.put("deputyUnit", unitMap.get("deputy_unitname"));// 副单位 singleObj.put("auditCode", "1");// 审核码 singleObj.put("statusCode", statusCode);// 状态码(Y表示启用,N表示停用) - singleObj.put("mrlTypeErp", "3");// 物料类型ERP(1:专用件,3:通用件)todo + singleObj.put("mrlTypeErp", getGoodsProject(pkMaterial));// 物料类型ERP(1:专用件,3:通用件) singleObj.put("mrlType", mrlTypeCOde);// 物料分类编码 singleObj.put("convertRate", unitMap.getOrDefault("convertRate", "1"));// 单位换算率 // singleObj.put("isCheck", "1");// 是否选中(1:是,0:否) @@ -131,7 +132,7 @@ public class MaterialToEpicMesListener implements IBusinessListener { return map.getOrDefault(eventType, "I"); } - private Map getUnitInfo(String pkMaterial) throws BusinessException { + private Map getGoodsInfo(String pkMaterial) throws BusinessException { String sql = " select a.pk_measdoc, c.name unitname, b.pk_measdoc deputyUnit, d.name deputy_unitname, nvl(b.measrate, '1/1') measrate " + "from bd_material a " + "left join bd_materialconvert b on a.pk_material = b.pk_material " + @@ -144,4 +145,14 @@ public class MaterialToEpicMesListener implements IBusinessListener { return map; } + private String getGoodsProject(String pkMaterial) throws BusinessException { + // 物料-库存信息页签勾选项目为专用件、未勾选项目为通用件 + String mrlTypeErp = "3"; // 物料类型ERP(1:专用件,3:通用件) + String fixasst2 = MyHelper.transferField(MaterialStockVO.getDefaultTableName(), MaterialStockVO.FIXASST2, MaterialStockVO.PK_MATERIAL, pkMaterial); + if ("Y".equals(fixasst2)) { + mrlTypeErp = "1"; + } + return mrlTypeErp; + } + }