From 0b8c29652126f28fa189617705bf6a0bec1d9967 Mon Sep 17 00:00:00 2001 From: lihao Date: Tue, 3 Feb 2026 17:02:50 +0800 Subject: [PATCH] =?UTF-8?q?=E7=89=A9=E6=96=99=E7=B1=BB=E5=9E=8B=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../listener/MaterialToJmQmsListener.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToJmQmsListener.java b/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToJmQmsListener.java index 7b942ce9..00dca05c 100644 --- a/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToJmQmsListener.java +++ b/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToJmQmsListener.java @@ -17,11 +17,13 @@ import nc.bs.trade.business.HYPubBO; import nc.bs.trade.business.HYSuperDMO; import nc.bs.uapbd.util.MyHelper; import nc.bs.uapbd.util.ThirdPartyPostRequestUtil; +import nc.jdbc.framework.processor.ColumnProcessor; import nc.jdbc.framework.processor.MapProcessor; import nc.pubitf.uapbd.IMaterialPubService; import nc.util.mmf.framework.base.MMValueCheck; import nc.vo.bd.defdoc.DefdocVO; import nc.vo.bd.material.MaterialVO; +import nc.vo.bd.material.marbasclass.MarBasClassVO; import nc.vo.bd.material.plan.MaterialPlanVO; import nc.vo.bd.material.prod.MaterialProdVO; import nc.vo.bd.material.stock.MaterialStockVO; @@ -159,6 +161,10 @@ public class MaterialToJmQmsListener implements IBusinessListener { JSONObject singleObj = new JSONObject(); // 批次编号,用于唯一标识当前传输的物料数据批次,便于追溯和批量处理 long cts = System.currentTimeMillis(); + // 物料类型 + String pk_marbasclass = vo.getPk_marbasclass(); + String mrlTypeName = MyHelper.getStrValByCondition(MarBasClassVO.getDefaultTableName(), MarBasClassVO.CODE, + "pk_marbasclass = '" + pk_marbasclass + "'"); singleObj.put("batchid", cts); JSONObject contentObj = new JSONObject(); // 计划信息自定义项2(原系统编码)BIP传启源物料档案的物料编码,BIP中物料编码传启源自定义字段“BIP物料编码” @@ -167,9 +173,9 @@ public class MaterialToJmQmsListener implements IBusinessListener { contentObj.put("wlmc", vo.getName()); // 物料名称 String wlxhgg = MyHelper.skipNull(vo.getMaterialtype()) + MyHelper.skipNull(vo.getMaterialspec()); contentObj.put("wlxhgg", wlxhgg); // 物料型号规格 - contentObj.put("wlfl", ""); // 物料分类 + contentObj.put("wlfl", mrlTypeName); // 物料分类 contentObj.put("cpfl", cpfl); // 产品分类 - contentObj.put("wlbz", wlbz); // 物料标志 + contentObj.put("wlbz", getMrlType(vo.getPk_material(),configParams.get("mrlOrg"))); // 物料标志 contentObj.put("sjjldw", unitMap.get("unitname")); // 设计计量单位 contentObj.put("cgjldw", unitMap.get("deputy_unitname")); // 采购计量单位 contentObj.put("zhxs", unitMap.getOrDefault("convertRate", "1.00")); // 转换系数 @@ -183,7 +189,12 @@ public class MaterialToJmQmsListener implements IBusinessListener { pushData(singleObj); } } - + private Object getMrlType(String pkMaterial, String xbOrg) throws DAOException { + String sql = " select martype from bd_materialstock left join org_stockorg on org_stockorg.pk_stockorg = bd_materialstock.pk_org " + + " where pk_material = '" + pkMaterial + "' " + " and org_stockorg.code = '" + xbOrg + "' "; + Object map = (Object) new BaseDAO().executeQuery(sql,new ColumnProcessor()); + return map; + } /** * 设置自定义字段的值 *