From f516e44a622ec6d06ba69cbe1fa4e28df7e263e4 Mon Sep 17 00:00:00 2001 From: mzr Date: Mon, 7 Jul 2025 16:12:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E7=A8=8B=E7=94=9F=E4=BA=A7=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=AE=A1=E6=89=B9=E5=90=8E=E6=8E=A8=E9=80=81=E8=89=BE?= =?UTF-8?q?=E6=99=AEMES-=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bs/mmpac/pmo/pac0002/bp/PMOApproveBP.java | 4 +- .../bp/rule/AfterApproveSyncEpicMesRule.java | 38 +++++++++---------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/PMOApproveBP.java b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/PMOApproveBP.java index 6767417..063b5d8 100644 --- a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/PMOApproveBP.java +++ b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/PMOApproveBP.java @@ -1,7 +1,7 @@ package nc.bs.mmpac.pmo.pac0002.bp; -import nc.bs.mmpac.pmo.pac0002.bp.rule.AfterApproveRuleSyncMes; +import nc.bs.mmpac.pmo.pac0002.bp.rule.AfterApproveSyncEpicMesRule; import nc.bs.mmpac.pmo.pac0002.bp.rule.AfterApprovingSynchronizeRuleRZ; import nc.bs.mmpac.pmo.pac0002.pluginpoint.PMOPluginPoint; import nc.bs.mmpac.pmo.pac0002.rule.*; @@ -55,6 +55,8 @@ public class PMOApproveBP { processer.addAfterRule(new AfterApprovingSynchronizeRuleRZ(true)); // 审批后推送流程生产订单到MES // processer.addAfterRule(new AfterApproveRuleSyncMes()); + // 审批后推送流程生产订单到艾普MES + processer.addAfterRule(new AfterApproveSyncEpicMesRule()); } diff --git a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterApproveSyncEpicMesRule.java b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterApproveSyncEpicMesRule.java index ef94819..7548979 100644 --- a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterApproveSyncEpicMesRule.java +++ b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterApproveSyncEpicMesRule.java @@ -5,7 +5,6 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import nc.bs.dao.BaseDAO; import nc.bs.logging.Log; -import nc.bs.logging.Logger; import nc.bs.trade.business.HYPubBO; import nc.bs.uapbd.util.MyHelper; import nc.bs.uapbd.util.ThirdPartyPostRequestUtil; @@ -13,8 +12,6 @@ import nc.impl.pubapp.pattern.rule.IRule; import nc.itf.arap.goldentax.SysParaInitQuery; import nc.jdbc.framework.processor.MapListProcessor; import nc.jdbc.framework.processor.MapProcessor; -import nc.vo.ic.m4d.entity.MaterialOutBodyVO; -import nc.vo.ic.m4d.entity.MaterialOutVO; import nc.vo.mmpac.pmo.pac0002.entity.PMOAggVO; import nc.vo.mmpac.pmo.pac0002.entity.PMOHeadVO; import nc.vo.mmpac.pmo.pac0002.entity.PMOItemVO; @@ -73,11 +70,11 @@ public class AfterApproveSyncEpicMesRule implements IRule { JSONObject data = buildSyncData(aggVO); pushData(data); - JSONObject buildSyncData= buildSyncData1(aggVO); + JSONObject buildSyncData = buildSyncData1(aggVO); jsonArray.add(buildSyncData); } - if(jsonArray.size() > 0) { - pushData("/prj-v5-web/ext/api/releaseNo",jsonArray); + if (jsonArray.size() > 0) { + pushNoData("/prj-v5-web/ext/api/releaseNo", jsonArray); } obmlog.info("生产订单同步到艾普MES系统处理完成。"); @@ -103,7 +100,7 @@ public class AfterApproveSyncEpicMesRule implements IRule { responseString = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, param.toJSONString()); obmlog.info(" 艾普MES系统原始返回: " + responseString); - JSONObject jsonResponse = JSONObject.parseObject(responseString); + // JSONObject jsonResponse = JSONObject.parseObject(responseString); } catch (Exception e) { obmlog.error(" 调用MES或处理响应时发生错误。原始响应: " + responseString + " 错误: " + e.getMessage(), e); throw new BusinessException("调用MES或处理响应时发生错误:" + e.getMessage(), e); @@ -129,7 +126,7 @@ public class AfterApproveSyncEpicMesRule implements IRule { } /** - * 组装数据 + * 组装数据-流程生产订单+备料计划 */ private JSONObject buildSyncData(PMOAggVO aggVO) throws BusinessException { JSONObject data = new JSONObject(); @@ -258,7 +255,7 @@ public class AfterApproveSyncEpicMesRule implements IRule { return field; } - private JSONObject buildSyncData1(PMOAggVO vo ) throws BusinessException { + private JSONObject buildSyncData1(PMOAggVO vo) throws BusinessException { // [ // { // "siteCode": "", // 工厂编码 @@ -270,38 +267,39 @@ public class AfterApproveSyncEpicMesRule implements IRule { //] JSONObject obj = new JSONObject(); - obj.put("siteCode", vo.getParentVO().getVbillcode()); // 已存在的billCode字段 - obj.put("workOrderCode", null); + obj.put("siteCode", null); // 已存在的billCode字段 + obj.put("workOrderCode", vo.getParentVO().getVbillcode()); BaseDAO dao = new BaseDAO(); String orgsql = "select code,name from org_factory where pk_factory = '" + vo.getParentVO().getPk_org() + "' "; - Map tr = (Map) dao.executeQuery( orgsql, new MapProcessor()); + Map tr = (Map) dao.executeQuery(orgsql, new MapProcessor()); obj.put("companyCode", tr.get("code")); obj.put("companyName", tr.get("name")); JSONArray jsonArray = new JSONArray(); - for (PMOItemVO item: vo.getChildrenVO()){ + for (PMOItemVO item : vo.getChildrenVO()) { HYPubBO hybo = new HYPubBO(); Object materialtype = hybo.findColValue("bd_material_v", "materialtype", "pk_source = '" + item.getCmaterialid() + "' "); - String detailItem = materialtype+vo.getParentVO().getDbilldate().toStdString().substring(0,3)+vo.getParentVO().getDbilldate().toStdString().substring(5,6)+"0001"; + String detailItem = materialtype + vo.getParentVO().getDbilldate().toStdString().substring(0, 3) + vo.getParentVO().getDbilldate().toStdString().substring(5, 6) + "0001"; jsonArray.add(detailItem); } obj.put("releaseNo", jsonArray); - return obj; + return obj; } - private void pushData(String requestUrl, JSONArray param) throws BusinessException { + + private void pushNoData(String requestUrl, JSONArray param) throws BusinessException { String baseUrl = SysParaInitQuery.getParaString("GLOBLE00000000000000", "EPICMESURL"); - baseUrl="http://192.168.55.39:8080"; + baseUrl = "http://192.168.55.39:8080"; requestUrl = baseUrl + requestUrl; String result = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, param.toJSONString()); JSONObject resultObj = JSONObject.parseObject(result); - Logger.error("EpicMes-Material-req = " + result); + obmlog.error("AfterApproveSyncEpicMesRule-pushData-req = " + result); if ("false".equals(resultObj.getString("success"))) { - throw new BusinessException("EpicMes-Material-failerror:" + resultObj.getString("msg")); + throw new BusinessException("AfterApproveSyncEpicMesRule-pushData-failerror:" + resultObj.getString("msg")); } else { - Logger.error("EpicMes-Material-suc,result[" + resultObj.toJSONString() + "]"); + obmlog.error("AfterApproveSyncEpicMesRule-pushData-suc,result[" + resultObj.toJSONString() + "]"); } }