流程生产订单审批后推送艾普MES-代码调整

This commit is contained in:
mzr 2025-07-07 16:12:23 +08:00
parent 47b13fbfbf
commit f516e44a62
2 changed files with 21 additions and 21 deletions

View File

@ -1,7 +1,7 @@
package nc.bs.mmpac.pmo.pac0002.bp; 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.bp.rule.AfterApprovingSynchronizeRuleRZ;
import nc.bs.mmpac.pmo.pac0002.pluginpoint.PMOPluginPoint; import nc.bs.mmpac.pmo.pac0002.pluginpoint.PMOPluginPoint;
import nc.bs.mmpac.pmo.pac0002.rule.*; import nc.bs.mmpac.pmo.pac0002.rule.*;
@ -55,6 +55,8 @@ public class PMOApproveBP {
processer.addAfterRule(new AfterApprovingSynchronizeRuleRZ(true)); processer.addAfterRule(new AfterApprovingSynchronizeRuleRZ(true));
// 审批后推送流程生产订单到MES // 审批后推送流程生产订单到MES
// processer.addAfterRule(new AfterApproveRuleSyncMes()); // processer.addAfterRule(new AfterApproveRuleSyncMes());
// 审批后推送流程生产订单到艾普MES
processer.addAfterRule(new AfterApproveSyncEpicMesRule());
} }

View File

@ -5,7 +5,6 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import nc.bs.dao.BaseDAO; import nc.bs.dao.BaseDAO;
import nc.bs.logging.Log; import nc.bs.logging.Log;
import nc.bs.logging.Logger;
import nc.bs.trade.business.HYPubBO; import nc.bs.trade.business.HYPubBO;
import nc.bs.uapbd.util.MyHelper; import nc.bs.uapbd.util.MyHelper;
import nc.bs.uapbd.util.ThirdPartyPostRequestUtil; 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.itf.arap.goldentax.SysParaInitQuery;
import nc.jdbc.framework.processor.MapListProcessor; import nc.jdbc.framework.processor.MapListProcessor;
import nc.jdbc.framework.processor.MapProcessor; 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.PMOAggVO;
import nc.vo.mmpac.pmo.pac0002.entity.PMOHeadVO; import nc.vo.mmpac.pmo.pac0002.entity.PMOHeadVO;
import nc.vo.mmpac.pmo.pac0002.entity.PMOItemVO; import nc.vo.mmpac.pmo.pac0002.entity.PMOItemVO;
@ -77,7 +74,7 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
jsonArray.add(buildSyncData); jsonArray.add(buildSyncData);
} }
if (jsonArray.size() > 0) { if (jsonArray.size() > 0) {
pushData("/prj-v5-web/ext/api/releaseNo",jsonArray); pushNoData("/prj-v5-web/ext/api/releaseNo", jsonArray);
} }
obmlog.info("生产订单同步到艾普MES系统处理完成。"); obmlog.info("生产订单同步到艾普MES系统处理完成。");
@ -103,7 +100,7 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
responseString = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, param.toJSONString()); responseString = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, param.toJSONString());
obmlog.info(" 艾普MES系统原始返回: " + responseString); obmlog.info(" 艾普MES系统原始返回: " + responseString);
JSONObject jsonResponse = JSONObject.parseObject(responseString); // JSONObject jsonResponse = JSONObject.parseObject(responseString);
} catch (Exception e) { } catch (Exception e) {
obmlog.error(" 调用MES或处理响应时发生错误。原始响应: " + responseString + " 错误: " + e.getMessage(), e); obmlog.error(" 调用MES或处理响应时发生错误。原始响应: " + responseString + " 错误: " + e.getMessage(), e);
throw new BusinessException("调用MES或处理响应时发生错误" + e.getMessage(), e); throw new BusinessException("调用MES或处理响应时发生错误" + e.getMessage(), e);
@ -129,7 +126,7 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
} }
/** /**
* ×é×°Êý¾Ý * 组装数据-流程生产订单+备料计划
*/ */
private JSONObject buildSyncData(PMOAggVO aggVO) throws BusinessException { private JSONObject buildSyncData(PMOAggVO aggVO) throws BusinessException {
JSONObject data = new JSONObject(); JSONObject data = new JSONObject();
@ -270,8 +267,8 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
//] //]
JSONObject obj = new JSONObject(); JSONObject obj = new JSONObject();
obj.put("siteCode", vo.getParentVO().getVbillcode()); // ÒÑ´æÔÚµÄbillCode×ÖÎ obj.put("siteCode", null); // 已存在的billCode字段
obj.put("workOrderCode", null); obj.put("workOrderCode", vo.getParentVO().getVbillcode());
BaseDAO dao = new BaseDAO(); BaseDAO dao = new BaseDAO();
String orgsql = "select code,name from org_factory where pk_factory = '" + vo.getParentVO().getPk_org() + "' "; String orgsql = "select code,name from org_factory where pk_factory = '" + vo.getParentVO().getPk_org() + "' ";
@ -290,18 +287,19 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
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"); String baseUrl = SysParaInitQuery.getParaString("GLOBLE00000000000000", "EPICMESURL");
baseUrl = "http://192.168.55.39:8080"; baseUrl = "http://192.168.55.39:8080";
requestUrl = baseUrl + requestUrl; requestUrl = baseUrl + requestUrl;
String result = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, param.toJSONString()); String result = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, param.toJSONString());
JSONObject resultObj = JSONObject.parseObject(result); JSONObject resultObj = JSONObject.parseObject(result);
Logger.error("EpicMes-Material-req = " + result); obmlog.error("AfterApproveSyncEpicMesRule-pushData-req = " + result);
if ("false".equals(resultObj.getString("success"))) { 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 { } else {
Logger.error("EpicMes-Material-suc,result[" + resultObj.toJSONString() + "]"); obmlog.error("AfterApproveSyncEpicMesRule-pushData-suc,result[" + resultObj.toJSONString() + "]");
} }
} }