生产订单审批后推送高压MES修改 优化
This commit is contained in:
		
							parent
							
								
									d40571cfb7
								
							
						
					
					
						commit
						e9a6d413a8
					
				|  | @ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONObject; | |||
| import com.alibaba.fastjson.serializer.SerializerFeature; | ||||
| import nc.bs.dao.BaseDAO; | ||||
| import nc.bs.dao.DAOException; | ||||
| import nc.bs.framework.common.NCLocator; | ||||
| import nc.bs.logging.Log; | ||||
| import nc.bs.trade.business.HYPubBO; | ||||
| import nc.bs.trade.business.HYSuperDMO; | ||||
|  | @ -15,7 +16,10 @@ import nc.bs.uapbd.util.ThirdPartyPostRequestUtil; | |||
| import nc.impl.pubapp.pattern.rule.IRule; | ||||
| 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.plan.MaterialPlanVO; | ||||
| import nc.vo.mmpac.pickm.entity.AggPickmVO; | ||||
| import nc.vo.mmpac.pickm.entity.PickmHeadVO; | ||||
| import nc.vo.mmpac.pickm.entity.PickmItemVO; | ||||
|  | @ -25,7 +29,11 @@ import nc.vo.pub.BusinessException; | |||
| import nc.vo.pubapp.pattern.exception.ExceptionUtils; | ||||
| import nc.vo.scmpub.util.ArrayUtil; | ||||
| 
 | ||||
| import java.util.HashMap; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.Objects; | ||||
| import java.util.stream.Stream; | ||||
| 
 | ||||
| /** | ||||
|  * 备料审批后推送高压MES | ||||
|  | @ -104,7 +112,7 @@ public class AfterApproveRuleHighpressureMes implements IRule<AggPickmVO> { | |||
|                 singleObj.put("productCode", mrl.get("code")); // 产品编码 | ||||
|                 singleObj.put("productName", mrl.get("name")); // 产品名称 | ||||
| 
 | ||||
|             singleObj.put("intervalModel", mrl.get("materialtype")); // (物料的自定义字段) | ||||
|                 singleObj.put("intervalModel", mrl.get("materialtype")); // (ÎïÁϵÄ×Ô¶¨Òå×Ö¶Î) | ||||
| //                singleObj.put("intervalModel", "(物料的自定义字段)"); // (物料的自定义字段) | ||||
|                 singleObj.put("requiredDate", pickmHeadVO.getDmakedate().toString()); // 需用日期 | ||||
|                 String sql1 = " select user_name from sm_user where cuserid = '" + pickmHeadVO.getCreator() + "' "; | ||||
|  | @ -114,6 +122,15 @@ public class AfterApproveRuleHighpressureMes implements IRule<AggPickmVO> { | |||
| 
 | ||||
|                 // 创建子项数组 | ||||
|                 for (PickmItemVO item : itemVOS) { | ||||
|                     String cmaterialvid = item.getCbmaterialid(); | ||||
|                     Map<String, MaterialPlanVO> planMap = queryMaterialPlanInfoByPks(new String[]{cmaterialvid}, pkOrg, | ||||
|                             new String[]{MaterialPlanVO.DEF1}); | ||||
|                     String drawingNumber = ""; | ||||
|                     if (MMValueCheck.isNotEmpty(planMap) && | ||||
|                             MMValueCheck.isNotEmpty(planMap.get(cmaterialvid))) { | ||||
|                         drawingNumber = planMap.get(cmaterialvid).getDef1(); | ||||
|                     } | ||||
| 
 | ||||
|                     JSONObject itemObj = new JSONObject(); | ||||
| 
 | ||||
|                     itemObj.put("bipChildId", item.getCpickm_bid()); // 子项主键ID | ||||
|  | @ -130,15 +147,7 @@ public class AfterApproveRuleHighpressureMes implements IRule<AggPickmVO> { | |||
|                     Map<String, Object> material = (Map<String, Object>) baseDAO.executeQuery(mrlsql, new MapProcessor()); | ||||
|                     itemObj.put("materialCode", material.get("code")); // 物料编码 | ||||
|                     itemObj.put("materialName", material.get("name")); // 物料名称 | ||||
| 
 | ||||
| //                    itemObj.put("drawingNumber", "计划信息组织"); // 图号 | ||||
|                     String plansql = "select def1 from bd_materialplan where pk_org = '0001A11000000059XIB0' " + "and pk_material = '" + item.getCbmaterialid() + "' " + "and  dr=0";//计划信息查询 | ||||
|                     Map<String, Object> plan = (Map<String, Object>) baseDAO.executeQuery(plansql, new MapProcessor()); | ||||
|                     if (plan != null && !plan.isEmpty()) { | ||||
|                         itemObj.put("drawingNumber", plan.get("def1")); // 图号编码(计划信息查询高压生产中心) | ||||
|                     } else { | ||||
|                         itemObj.put("drawingNumber", ""); | ||||
|                     } | ||||
|                     itemObj.put("drawingNumber", drawingNumber); | ||||
| 
 | ||||
|                     Object unit = hybo.findColValue("bd_measdoc", "code", " pk_measdoc = '" + material.get("pk_measdoc") + "' "); | ||||
|                     itemObj.put("unit", unit); // 规格单位 | ||||
|  | @ -193,6 +202,15 @@ public class AfterApproveRuleHighpressureMes implements IRule<AggPickmVO> { | |||
|                 // 创建子项数组 | ||||
| //                JSONArray contentArray = new JSONArray(); | ||||
|                 for (PickmItemVO item : itemVOS) { | ||||
|                     String cmaterialvid = item.getCbmaterialid(); | ||||
|                     Map<String, MaterialPlanVO> planMap = queryMaterialPlanInfoByPks(new String[]{cmaterialvid}, pkOrg, | ||||
|                             new String[]{MaterialPlanVO.DEF1}); | ||||
|                     String drawingNumber = ""; | ||||
|                     if (MMValueCheck.isNotEmpty(planMap) && | ||||
|                             MMValueCheck.isNotEmpty(planMap.get(cmaterialvid))) { | ||||
|                         drawingNumber = planMap.get(cmaterialvid).getDef1(); | ||||
|                     } | ||||
| 
 | ||||
|                     JSONObject itemObj = new JSONObject(); | ||||
| 
 | ||||
|                     itemObj.put("bipChildId", item.getCpickm_bid()); // 子项主键ID | ||||
|  | @ -207,15 +225,7 @@ public class AfterApproveRuleHighpressureMes implements IRule<AggPickmVO> { | |||
|                     Map<String, Object> material = (Map<String, Object>) baseDAO.executeQuery(mrlsql, new MapProcessor()); | ||||
|                     itemObj.put("materialCode", material.get("code")); // 物料编码 | ||||
|                     itemObj.put("materialName", material.get("name")); // 物料名称 | ||||
| 
 | ||||
| //                    itemObj.put("drawingNumber", "计划信息组织"); // 图号 | ||||
|                     String plansql = "select def1 from bd_materialplan where pk_org = '0001A11000000059XIB0' " + "and pk_material = '" + item.getCbmaterialid() + "' " + "and  dr=0";//计划信息查询 | ||||
|                     Map<String, Object> plan = (Map<String, Object>) baseDAO.executeQuery(plansql, new MapProcessor()); | ||||
|                     if (plan != null && !plan.isEmpty()) { | ||||
|                         itemObj.put("drawingNumber", plan.get("def1")); // 图号编码(计划信息查询高压生产中心) | ||||
|                     } else { | ||||
|                         itemObj.put("drawingNumber", ""); | ||||
|                     } | ||||
|                     itemObj.put("drawingNumber", drawingNumber); | ||||
| 
 | ||||
|                     Object unit = hybo.findColValue("bd_measdoc", "code", " pk_measdoc = '" + material.get("pk_measdoc") + "' "); | ||||
|                     itemObj.put("unit", unit); // 规格单位 | ||||
|  | @ -304,5 +314,18 @@ public class AfterApproveRuleHighpressureMes implements IRule<AggPickmVO> { | |||
|         return true; | ||||
|     } | ||||
| 
 | ||||
|     public static Map<String, MaterialPlanVO> queryMaterialPlanInfoByPks(String[] pks, String pk_stockorg, | ||||
|                                                                          String[] fields) throws BusinessException { | ||||
|         Map<String, MaterialPlanVO> map = null; | ||||
|         List<String> vids = Stream.of(pks).filter(Objects::nonNull).distinct().toList(); | ||||
|         if (vids.isEmpty()) { | ||||
|             map = new HashMap<>(); | ||||
|         } else { | ||||
|             map = NCLocator.getInstance().lookup(IMaterialPubService.class) | ||||
|                     .queryMaterialPlanInfoByPks(vids.toArray(new String[0]), pk_stockorg, fields); | ||||
|         } | ||||
| 
 | ||||
|         return map; | ||||
|     } | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONArray; | |||
| import com.alibaba.fastjson.JSONObject; | ||||
| import com.alibaba.fastjson.serializer.SerializerFeature; | ||||
| import nc.bs.dao.BaseDAO; | ||||
| import nc.bs.framework.common.NCLocator; | ||||
| import nc.bs.logging.Log; | ||||
| import nc.bs.trade.business.HYPubBO; | ||||
| import nc.bs.uapbd.util.MyHelper; | ||||
|  | @ -13,15 +14,23 @@ import nc.bs.uapbd.util.ThirdPartyPostRequestUtil; | |||
| import nc.impl.pubapp.pattern.rule.IRule; | ||||
| 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.material.plan.MaterialPlanVO; | ||||
| import nc.vo.mmpac.pmo.pac0002.entity.PMOAggVO; | ||||
| import nc.vo.mmpac.pmo.pac0002.entity.PMOHeadVO; | ||||
| import nc.vo.mmpac.pmo.pac0002.entity.PMOItemVO; | ||||
| import nc.vo.org.OrgVO; | ||||
| import nc.vo.pub.BusinessException; | ||||
| import nc.vo.pub.lang.UFBoolean; | ||||
| import nc.vo.pubapp.pattern.exception.ExceptionUtils; | ||||
| import nc.vo.scmpub.util.ArrayUtil; | ||||
| 
 | ||||
| import java.util.HashMap; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.Objects; | ||||
| import java.util.stream.Stream; | ||||
| 
 | ||||
| /** | ||||
|  * 流程生产订单审批后推送高压MES | ||||
|  | @ -80,6 +89,15 @@ public class AfterApproveSyncHighpressureMesRule implements IRule<PMOAggVO> { | |||
|             JSONArray contentArray = new JSONArray(); | ||||
| 
 | ||||
|             for (PMOItemVO item : itemVOS) { | ||||
|                 String cmaterialvid = item.getCmaterialvid(); | ||||
|                 Map<String, MaterialPlanVO> planMap = queryMaterialPlanInfoByPks(new String[]{cmaterialvid}, pkOrg, | ||||
|                         new String[]{MaterialPlanVO.DEF1}); | ||||
|                 String drawingNumber = ""; | ||||
|                 if (MMValueCheck.isNotEmpty(planMap) && | ||||
|                         MMValueCheck.isNotEmpty(planMap.get(cmaterialvid))) { | ||||
|                     drawingNumber = planMap.get(cmaterialvid).getDef1(); | ||||
|                 } | ||||
| 
 | ||||
|                 //自定义项30是Y时调用修改口,若不是则调用新增口 | ||||
|                 String saleDef = (String) item.getAttributeValue("vdef30") == null ? "" : (String) item.getAttributeValue("vdef30"); | ||||
|                 if (!saleDef.equals("Y")) { | ||||
|  | @ -97,9 +115,9 @@ public class AfterApproveSyncHighpressureMesRule implements IRule<PMOAggVO> { | |||
| 
 | ||||
|                     itemObj.put("contractNum", contractNum); // 合同编号 | ||||
| 
 | ||||
|                 Object cwarehouseid = hybo.findColValue("bd_stordoc", "code", " (pk_stordoc = '" + item.getAttributeValue("vbdef35") + "') "); | ||||
|                     Object cwarehouseid = hybo.findColValue("bd_stordoc", "code", " (pk_stordoc = '" + item.getAttributeValue("vbdef35") + "') "); | ||||
| 
 | ||||
|                 itemObj.put("cwarehouseid", cwarehouseid); // 合同编号 | ||||
|                     itemObj.put("cwarehouseid", cwarehouseid); // 合同编号 | ||||
|                     Object pk_project = hybo.findColValue("bd_project", "project_name", " pk_project = '" + item.getCprojectid() + "' "); | ||||
| 
 | ||||
|                     itemObj.put("entryName", pk_project); // 项目名称 | ||||
|  | @ -120,18 +138,12 @@ public class AfterApproveSyncHighpressureMesRule implements IRule<PMOAggVO> { | |||
|                     itemObj.put("bipOriginProcessProductionOrderRowNum", item.getVsrcrowno()); | ||||
| 
 | ||||
|                     // 物料信息 | ||||
|                     String mrlsql = "select code,name,graphid,pk_measdoc,materialtype from bd_material where pk_material = '" + item.getCmaterialvid() + "' "; | ||||
|                     String mrlsql = "select code,name,graphid,pk_measdoc,materialtype from bd_material where pk_material = '" + cmaterialvid + "' "; | ||||
|                     Map<String, Object> mrl = (Map<String, Object>) baseDAO.executeQuery(mrlsql, new MapProcessor()); | ||||
|                     itemObj.put("materialCode", mrl.get("code")); // 物料编码 | ||||
|                     itemObj.put("materialName", mrl.get("name")); // 物料名称 | ||||
| 
 | ||||
|                     String plansql = "select def1 from bd_materialplan where pk_org = '0001A11000000059XIB0' " + "and pk_material = '" + item.getCmaterialvid() + "' " + "and  dr=0";//计划信息查询 | ||||
|                     Map<String, Object> plan = (Map<String, Object>) baseDAO.executeQuery(plansql, new MapProcessor()); | ||||
|                     if (plan != null && !plan.isEmpty()) { | ||||
|                         itemObj.put("drawingNumber", plan.get("def1")); // 图号编码(计划信息查询高压生产中心) | ||||
|                     } else { | ||||
|                         itemObj.put("drawingNumber", ""); | ||||
|                     } | ||||
|                     itemObj.put("drawingNumber", drawingNumber); // 图号 | ||||
| 
 | ||||
|                     Object unit = hybo.findColValue("bd_measdoc", "code", " pk_measdoc = '" + mrl.get("pk_measdoc") + "' "); | ||||
|                     itemObj.put("unit", unit); // 单位 pk_measdoc | ||||
|  | @ -186,19 +198,20 @@ public class AfterApproveSyncHighpressureMesRule implements IRule<PMOAggVO> { | |||
|                     itemObj.put("bipOriginProcessProductionOrderRowNum", ""); | ||||
| 
 | ||||
|                     // 物料信息 | ||||
|                     String mrlsql = "select code,name,graphid,pk_measdoc,materialtype from bd_material where pk_material = '" + item.getCmaterialvid() + "' "; | ||||
|                     String mrlsql = "select code,name,graphid,pk_measdoc,materialtype from bd_material where pk_material = '" + cmaterialvid + "' "; | ||||
|                     Map<String, Object> mrl = (Map<String, Object>) baseDAO.executeQuery(mrlsql, new MapProcessor()); | ||||
|                     itemObj.put("materialCode", mrl.get("code")); // 物料编码 | ||||
|                     itemObj.put("materialName", mrl.get("name")); // 物料名称 | ||||
| 
 | ||||
|                     String plansql = "select def1 from bd_materialplan where pk_org = '0001A11000000059XIB0' " + "and pk_material = '" + item.getCmaterialvid() + "' " + "and  dr=0";//计划信息查询 | ||||
|                     Map<String, Object> plan = (Map<String, Object>) baseDAO.executeQuery(plansql, new MapProcessor()); | ||||
|                     if (plan != null && !plan.isEmpty()) { | ||||
|                         itemObj.put("drawingNumber", plan.get("def1")); // 图号编码(计划信息查询高压生产中心) | ||||
|                     } else { | ||||
|                         itemObj.put("drawingNumber", ""); | ||||
|                     } | ||||
| //                    String plansql = "select def1 from bd_materialplan where pk_org = '0001A11000000059XIB0' " + "and pk_material = '" + item.getCmaterialvid() + "' " + "and  dr=0";//计划信息查询 | ||||
| //                    Map<String, Object> plan = (Map<String, Object>) baseDAO.executeQuery(plansql, new MapProcessor()); | ||||
| //                    if (plan != null && !plan.isEmpty()) { | ||||
| //                        itemObj.put("drawingNumber", plan.get("def1")); // 图号编码(计划信息查询高压生产中心) | ||||
| //                    } else { | ||||
| //                        itemObj.put("drawingNumber", ""); | ||||
| //                    } | ||||
| 
 | ||||
|                     itemObj.put("drawingNumber", drawingNumber); | ||||
|                     Object unit = hybo.findColValue("bd_measdoc", "code", " pk_measdoc = '" + mrl.get("pk_measdoc") + "' "); | ||||
|                     itemObj.put("unit", unit); // 单位 pk_measdoc | ||||
| 
 | ||||
|  | @ -227,7 +240,7 @@ public class AfterApproveSyncHighpressureMesRule implements IRule<PMOAggVO> { | |||
|                 String sql1 = " select user_name from sm_user where cuserid = '" + pmoHeadVO.getCreator() + "' "; | ||||
|                 String bipCreateBy = (String) baseDAO.executeQuery(sql1, new ColumnProcessor()); | ||||
|                 singleObj.put("bipCreateBy", bipCreateBy); // 创建人ID | ||||
|             } else if (flags.equals("updateOrder")){ | ||||
|             } else { | ||||
|                 String sql1 = " select user_name from sm_user where cuserid = '" + pmoHeadVO.getModifier() + "' "; | ||||
|                 String bipUpdateBy = (String) baseDAO.executeQuery(sql1, new ColumnProcessor()); | ||||
|                 singleObj.put("bipUpdateBy", bipUpdateBy); // 修改人ID | ||||
|  | @ -281,5 +294,19 @@ public class AfterApproveSyncHighpressureMesRule implements IRule<PMOAggVO> { | |||
|         return true; | ||||
|     } | ||||
| 
 | ||||
|     public static Map<String, MaterialPlanVO> queryMaterialPlanInfoByPks(String[] pks, String pk_stockorg, | ||||
|                                                                          String[] fields) throws BusinessException { | ||||
|         Map<String, MaterialPlanVO> map = null; | ||||
|         List<String> vids = Stream.of(pks).filter(Objects::nonNull).distinct().toList(); | ||||
|         if (vids.isEmpty()) { | ||||
|             map = new HashMap<>(); | ||||
|         } else { | ||||
|             map = NCLocator.getInstance().lookup(IMaterialPubService.class) | ||||
|                     .queryMaterialPlanInfoByPks(vids.toArray(new String[0]), pk_stockorg, fields); | ||||
|         } | ||||
| 
 | ||||
|         return map; | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -64,12 +64,13 @@ public class MaterialToGyMesListener implements IBusinessListener { | |||
|      * 构建同步数据 | ||||
|      */ | ||||
|     private void buildSyncData(MaterialVO[] useVOs, String eventType) throws BusinessException { | ||||
|         String orgId = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.PK_ORG, OrgVO.CODE, "C046"); | ||||
| //        String orgId = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.PK_ORG, OrgVO.CODE, "C046"); | ||||
|         String pkOrg = MyHelper.getStrValByCondition("ORG_ORGS", OrgVO.PK_ORG, OrgVO.CODE + " = '" + "C046" + "'"+ " and ISBUSINESSUNIT = '" + "Y" +"'"); | ||||
|         JSONArray dataArr = new JSONArray(); | ||||
|         for (MaterialVO vo : useVOs) { | ||||
|             String pkMaterial = vo.getPk_material(); | ||||
|             // 判断物料的业务单元是否是高压公司,不是则跳过 | ||||
|             // String pkOrg = vo.getPk_org(); | ||||
| //             String pkOrg = vo.getPk_org(); | ||||
|             Integer num = MyHelper.checkIfOrg(configParams, pkMaterial, "gyOrg"); | ||||
|             if (!"1009".equals(eventType) && (num <= 0)) { | ||||
|                 continue; | ||||
|  | @ -80,12 +81,14 @@ public class MaterialToGyMesListener implements IBusinessListener { | |||
|                     "pk_marbasclass = '" + pk_marbasclass + "'"); | ||||
|             // 计量单位 | ||||
|             Map unitMap = getGoodsInfo(pkMaterial); | ||||
|             Map<String, MaterialPlanVO> planMap = queryMaterialPlanInfoByPks(new String[]{pkMaterial}, orgId, | ||||
|                     new String[]{MaterialPlanVO.ISVIRTUAL}); | ||||
|             Map<String, MaterialPlanVO> planMap = queryMaterialPlanInfoByPks(new String[]{pkMaterial}, pkOrg, | ||||
|                     new String[]{MaterialPlanVO.ISVIRTUAL, MaterialPlanVO.DEF1}); | ||||
|             UFBoolean isvirtual = new UFBoolean(false); | ||||
|             String drawingNumber = ""; | ||||
|             if (MMValueCheck.isNotEmpty(planMap) && | ||||
|                     MMValueCheck.isNotEmpty(planMap.get(pkMaterial))) { | ||||
|                 isvirtual = planMap.get(pkMaterial).getIsvirtual(); | ||||
|                 drawingNumber = planMap.get(pkMaterial).getDef1(); | ||||
|             } | ||||
|             // 库存 | ||||
|             Map stockMap = getStockInfo(pkMaterial); | ||||
|  | @ -111,13 +114,7 @@ public class MaterialToGyMesListener implements IBusinessListener { | |||
|             singleObj.put("materialUnit", unitMap.get("measrate").toString().split("/")[1]); // 单位 | ||||
| 
 | ||||
| //            singleObj.put("drawingNumber", vo.getGraphid()); // 图号编码 | ||||
|             String plansql = "select def1 from bd_materialplan where pk_org = '0001A11000000059XIB0' " + "and pk_material = '" + pkMaterial + "' " + "and  dr=0";//计划信息查询 | ||||
|             Map<String, Object> plan = (Map<String, Object>) baseDAO.executeQuery(plansql, new MapProcessor()); | ||||
|             if (plan != null && !plan.isEmpty()) { | ||||
|               singleObj.put("drawingNumber", plan.get("def1")); // 图号编码(计划信息查询高压生产中心) | ||||
|             } else { | ||||
|                 singleObj.put("drawingNumber", ""); | ||||
|             } | ||||
|             singleObj.put("drawingNumber", drawingNumber); | ||||
|             singleObj.put("enableStatus", enablestate - 1); // 启用状态 0 未启动 1 已启动 2 已停用 | ||||
|             singleObj.put("materialType", stockMap.get("martype")); // 物料类型编码 | ||||
|             singleObj.put("batchManagement", stockMap.get("wholemanaflag")); // 批次管理 | ||||
|  |  | |||
|  | @ -97,12 +97,14 @@ public class MaterialToGyMesListener implements IBusinessListener { | |||
|      * 构建同步数据 | ||||
|      */ | ||||
|     private void buildSyncData(MaterialVO[] useVOs, String eventType) throws BusinessException { | ||||
|         String orgId = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.PK_ORG, OrgVO.CODE, "C046"); | ||||
| 
 | ||||
| //        String orgId = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.PK_ORG, OrgVO.CODE, "C046"); | ||||
|         String pkOrg = MyHelper.getStrValByCondition("ORG_ORGS", OrgVO.PK_ORG, OrgVO.CODE + " = '" + "C046" + "'"+ " and ISBUSINESSUNIT = '" + "Y" +"'"); | ||||
|         JSONArray dataArr = new JSONArray(); | ||||
|         for (MaterialVO vo : useVOs) { | ||||
|             String pkMaterial = vo.getPk_material(); | ||||
|             // 判断物料的业务单元是否是高压公司,不是则跳过 | ||||
|             // String pkOrg = vo.getPk_org(); | ||||
| //             String pkOrg = vo.getPk_org(); | ||||
|             Integer num = MyHelper.checkIfOrg(configParams, pkMaterial, "gyOrg"); | ||||
|             if (!"1009".equals(eventType) && (num <= 0)) { | ||||
|                 continue; | ||||
|  | @ -113,12 +115,14 @@ public class MaterialToGyMesListener implements IBusinessListener { | |||
|                     "pk_marbasclass = '" + pk_marbasclass + "'"); | ||||
|             // 计量单位 | ||||
|             Map unitMap = getGoodsInfo(pkMaterial); | ||||
|             Map<String, MaterialPlanVO> planMap = queryMaterialPlanInfoByPks(new String[]{pkMaterial}, orgId, | ||||
|                     new String[]{MaterialPlanVO.ISVIRTUAL}); | ||||
|             Map<String, MaterialPlanVO> planMap = queryMaterialPlanInfoByPks(new String[]{pkMaterial}, pkOrg, | ||||
|                     new String[]{MaterialPlanVO.ISVIRTUAL, MaterialPlanVO.DEF1}); | ||||
|             UFBoolean isvirtual = new UFBoolean(false); | ||||
|             String drawingNumber = ""; | ||||
|             if (MMValueCheck.isNotEmpty(planMap) && | ||||
|                     MMValueCheck.isNotEmpty(planMap.get(pkMaterial))) { | ||||
|                 isvirtual = planMap.get(pkMaterial).getIsvirtual(); | ||||
|                 drawingNumber = planMap.get(pkMaterial).getDef1(); | ||||
|             } | ||||
|             // 库存 | ||||
|             Map stockMap = getStockInfo(pkMaterial); | ||||
|  | @ -142,16 +146,8 @@ public class MaterialToGyMesListener implements IBusinessListener { | |||
|             singleObj.put("primaryUnit", unitMap.get("measrate").toString().split("/")[0]); | ||||
|             // 主单位 | ||||
|             singleObj.put("materialUnit", unitMap.get("measrate").toString().split("/")[1]); // 单位 | ||||
| 
 | ||||
| //            singleObj.put("drawingNumber", vo.getGraphid()); // 图号编码 | ||||
|             String plansql = "select def1 from bd_materialplan where pk_org = '0001A11000000059XIB0' " + "and pk_material = '" + pkMaterial + "' " + "and  dr=0";//计划信息查询 | ||||
|             Map<String, Object> plan = (Map<String, Object>) baseDAO.executeQuery(plansql, new MapProcessor()); | ||||
|             if (plan != null && !plan.isEmpty()) { | ||||
|                 singleObj.put("drawingNumber", plan.get("def1")); // 图号编码(计划信息查询高压生产中心) | ||||
|             } else { | ||||
|                 singleObj.put("drawingNumber", ""); | ||||
|             } | ||||
| 
 | ||||
|             singleObj.put("drawingNumber", drawingNumber); | ||||
|             singleObj.put("enableStatus", enablestate - 1); // 启用状态 0 未启动 1 已启动 2 已停用 | ||||
|             singleObj.put("materialType", stockMap.get("martype")); // 物料类型编码 | ||||
|             singleObj.put("batchManagement", stockMap.get("wholemanaflag")); // 批次管理 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue