Merge remote-tracking branch 'origin/main'
This commit is contained in:
commit
d08a78681e
|
@ -57,11 +57,10 @@ public class PMOApproveBP {
|
||||||
processer.addAfterRule(new AfterApproveSyncEpicMesRule());
|
processer.addAfterRule(new AfterApproveSyncEpicMesRule());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 审批后推送流程生产订单到启源qms
|
// 审批后推送流程生产订单到启源qms
|
||||||
processer.addAfterRule(new AfterApproveSyncEpicQMSRule());
|
processer.addAfterRule(new AfterApproveSyncQMSRule());
|
||||||
// 流程生产订单审批后推送高压MES
|
// 流程生产订单审批后推送高压MES
|
||||||
processer.addAfterRule(new AfterApproveSyncHighpressureMesRule());
|
// processer.addAfterRule(new AfterApproveSyncHighpressureMesRule());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -7,19 +7,19 @@ import com.alibaba.fastjson.JSONObject;
|
||||||
import com.alibaba.fastjson.serializer.SerializerFeature;
|
import com.alibaba.fastjson.serializer.SerializerFeature;
|
||||||
import nc.bs.dao.BaseDAO;
|
import nc.bs.dao.BaseDAO;
|
||||||
import nc.bs.logging.Log;
|
import nc.bs.logging.Log;
|
||||||
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;
|
||||||
import nc.impl.pubapp.pattern.rule.IRule;
|
import nc.impl.pubapp.pattern.rule.IRule;
|
||||||
import nc.jdbc.framework.processor.ColumnProcessor;
|
import nc.jdbc.framework.processor.ColumnProcessor;
|
||||||
|
import nc.jdbc.framework.processor.MapProcessor;
|
||||||
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;
|
||||||
import nc.vo.org.OrgVO;
|
import nc.vo.org.OrgVO;
|
||||||
|
import nc.vo.pmpub.project.ProjectHeadVO;
|
||||||
import nc.vo.pub.BusinessException;
|
import nc.vo.pub.BusinessException;
|
||||||
import nccloud.baseapp.core.log.NCCForUAPLogger;
|
import nc.vo.pub.lang.UFDateTime;
|
||||||
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -32,7 +32,7 @@ public class AfterApproveSyncQMSRule implements IRule<PMOAggVO> {
|
||||||
|
|
||||||
private static final String LOG_INFO_NAME = "qyMesLog";
|
private static final String LOG_INFO_NAME = "qyMesLog";
|
||||||
private static final Log logger = Log.getInstance(LOG_INFO_NAME);
|
private static final Log logger = Log.getInstance(LOG_INFO_NAME);
|
||||||
private static final String reqUrl = "IF_QyErpApi.ashx?action=addscjh";
|
private static final String reqUrl = "/IF_QyErpApi.ashx?action=addscjh";
|
||||||
private Map<String, String> configParams;
|
private Map<String, String> configParams;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -53,8 +53,6 @@ public class AfterApproveSyncQMSRule implements IRule<PMOAggVO> {
|
||||||
*/
|
*/
|
||||||
private void buildSyncData(PMOAggVO[] useVOs) throws BusinessException {
|
private void buildSyncData(PMOAggVO[] useVOs) throws BusinessException {
|
||||||
BaseDAO baseDAO = new BaseDAO();
|
BaseDAO baseDAO = new BaseDAO();
|
||||||
|
|
||||||
HYPubBO hybo = new HYPubBO();
|
|
||||||
for (PMOAggVO vo : useVOs) {
|
for (PMOAggVO vo : useVOs) {
|
||||||
// 判断物料的业务单元是否是箱变公司,不是则跳过
|
// 判断物料的业务单元是否是箱变公司,不是则跳过
|
||||||
String pkOrg = vo.getParentVO().getPk_org();
|
String pkOrg = vo.getParentVO().getPk_org();
|
||||||
|
@ -66,59 +64,43 @@ public class AfterApproveSyncQMSRule implements IRule<PMOAggVO> {
|
||||||
JSONObject singleObj = new JSONObject();
|
JSONObject singleObj = new JSONObject();
|
||||||
PMOHeadVO pmoHeadVO = vo.getParentVO();
|
PMOHeadVO pmoHeadVO = vo.getParentVO();
|
||||||
PMOItemVO[] itemVOS = vo.getChildrenVO();
|
PMOItemVO[] itemVOS = vo.getChildrenVO();
|
||||||
singleObj.put("batchid", new Date());
|
String sql = " select user_name from sm_user where dr = 0 and cuserid = '" + pmoHeadVO.getBillmaker() + "' ";
|
||||||
singleObj.put("scdh", pmoHeadVO.getVbillcode());
|
|
||||||
singleObj.put("xdrq", pmoHeadVO.getDbilldate());
|
|
||||||
String sql = " select user_name from sm_user where cuserid = '" + pmoHeadVO.getBillmaker() + "' ";
|
|
||||||
String billmakerName = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
|
String billmakerName = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
|
||||||
|
|
||||||
|
singleObj.put("batchid", System.currentTimeMillis());
|
||||||
|
singleObj.put("scdh", pmoHeadVO.getVbillcode());
|
||||||
|
singleObj.put("xdrq", pmoHeadVO.getDbilldate().toString());
|
||||||
singleObj.put("jhy", billmakerName);
|
singleObj.put("jhy", billmakerName);
|
||||||
singleObj.put("bz", pmoHeadVO.getVnote());
|
singleObj.put("bz", pmoHeadVO.getVnote());
|
||||||
// 处理Content数组
|
// 处理Content数组
|
||||||
JSONArray contentArray = new JSONArray();
|
JSONArray contentArray = new JSONArray();
|
||||||
for (PMOItemVO item : itemVOS) {
|
for (PMOItemVO item : itemVOS) {
|
||||||
|
String cmaterialvid = item.getCmaterialvid();
|
||||||
|
String whereSql = " select code,name,materialspec,materialtype from bd_material where pk_material = '" + cmaterialvid + "' ";
|
||||||
|
Map<String, Object> mrlmap = (Map<String, Object>) baseDAO.executeQuery(whereSql, new MapProcessor());
|
||||||
|
|
||||||
|
String cprojectid = item.getCprojectid();// ÏîÄ¿id
|
||||||
|
String projectCode = MyHelper.getStrValByCondition(ProjectHeadVO.getDefaultTableName(), ProjectHeadVO.PROJECT_CODE,
|
||||||
|
ProjectHeadVO.PK_PROJECT + " = '" + cprojectid + "'");
|
||||||
|
|
||||||
JSONObject itemObj = new JSONObject();
|
JSONObject itemObj = new JSONObject();
|
||||||
itemObj.put("sgdh", pmoHeadVO.getVbillcode());
|
itemObj.put("sgdh", pmoHeadVO.getVbillcode());
|
||||||
itemObj.put("xshth", item.getCprojectid());
|
itemObj.put("xshth", projectCode);
|
||||||
// itemObj.put("htqdxh", item.getHtqdxh());
|
itemObj.put("htqdxh", item.getVfirstrowno());
|
||||||
// Object no = hybo.findColValue("bd_material", "code", "pk_material = '"+item.getCmaterialvid()+"' ");
|
|
||||||
//
|
|
||||||
// Object name = hybo.findColValue("bd_material", "name", "pk_material = '"+item.getCmaterialvid()+"' ");
|
|
||||||
String wlsql = " select code,name,materialspec,materialtype from bd_material where pk_material = '" + item.getCmaterialvid() + "' ";
|
|
||||||
Map<String, Object> mrlmap = (Map<String, Object>) baseDAO.executeQuery(wlsql, new ColumnProcessor());
|
|
||||||
|
|
||||||
itemObj.put("wlbh", mrlmap.get("code"));
|
itemObj.put("wlbh", mrlmap.get("code"));
|
||||||
itemObj.put("wlmc", mrlmap.get("name"));
|
itemObj.put("wlmc", mrlmap.get("name"));
|
||||||
itemObj.put("wlxhgg", mrlmap.get("materialspec") + (String) mrlmap.get("materialtype"));
|
itemObj.put("wlxhgg", mrlmap.get("materialspec") + (String) mrlmap.get("materialtype"));
|
||||||
itemObj.put("jhsl", item.getNastnum());
|
itemObj.put("jhsl", item.getNastnum().toString());
|
||||||
itemObj.put("jhrq", item.getTplanendtime());
|
UFDateTime tplanendtime = item.getTplanendtime();
|
||||||
|
String tplanendtimeStr = "";
|
||||||
|
if (tplanendtime != null) {
|
||||||
|
tplanendtimeStr = tplanendtime.toString();
|
||||||
|
}
|
||||||
|
itemObj.put("jhrq", tplanendtimeStr);
|
||||||
itemObj.put("bz", item.getVnote());
|
itemObj.put("bz", item.getVnote());
|
||||||
contentArray.add(itemObj);
|
contentArray.add(itemObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
singleObj.put("Content", contentArray);
|
singleObj.put("Content", contentArray);
|
||||||
/*
|
|
||||||
{
|
|
||||||
"batchid": "PO202408001",
|
|
||||||
"scdh": "PROD202408001",
|
|
||||||
"xdrq": "2024-08-21",
|
|
||||||
"jhy": "张三",
|
|
||||||
"bz": "紧急生产订单,优先安排",
|
|
||||||
"Content": [
|
|
||||||
{
|
|
||||||
"sgdh": "CON202408001",
|
|
||||||
"xshth": "SALE202408001",
|
|
||||||
"htqdxh": "001",
|
|
||||||
"wlbh": "ACC26711",
|
|
||||||
"wlmc": "铜排",
|
|
||||||
"wlxhgg": "15558190831",
|
|
||||||
"jhsl": "100",
|
|
||||||
"jhrq": "2024-08-25",
|
|
||||||
"bz": "需符合材质要求"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
pushData(singleObj);
|
pushData(singleObj);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -133,18 +115,18 @@ public class AfterApproveSyncQMSRule implements IRule<PMOAggVO> {
|
||||||
SerializerFeature.WriteMapNullValue,
|
SerializerFeature.WriteMapNullValue,
|
||||||
SerializerFeature.WriteNullStringAsEmpty
|
SerializerFeature.WriteNullStringAsEmpty
|
||||||
);
|
);
|
||||||
logger.error("QMS-Material-param = " + jsonStr);
|
logger.error("QMS-PMO-XB-param = " + jsonStr);
|
||||||
NCCForUAPLogger.debug("QMS-Material-param = " + jsonStr);
|
// NCCForUAPLogger.debug("QMS-PMO-XB-param = " + jsonStr);
|
||||||
String baseUrl = configParams.get("qmsBaseUrl");
|
String baseUrl = configParams.get("qmsBaseUrl");
|
||||||
String requestUrl = baseUrl + reqUrl;
|
String requestUrl = baseUrl + reqUrl;
|
||||||
logger.error("QMS-Material-url = " + requestUrl);
|
logger.error("QMS-PMO-XB-url = " + requestUrl);
|
||||||
String result = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, jsonStr);
|
String result = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, jsonStr);
|
||||||
JSONObject resultObj = JSONObject.parseObject(result);
|
JSONObject resultObj = JSONObject.parseObject(result);
|
||||||
logger.error("QMS-Material-res = " + result);
|
logger.error("QMS-PMO-XB-res = " + result);
|
||||||
|
|
||||||
if (!"success".equals(resultObj.getString("success"))) {
|
if (!"true".equals(resultObj.getString("success"))) {
|
||||||
// throw new BusinessException("QMS-Material-error:" + resultObj.getString("msg"));
|
// throw new BusinessException("QMS-PMO-XB-error:" + resultObj.getString("msg"));
|
||||||
logger.error("QMS-Material-error,result[" + resultObj.toJSONString() + "]");
|
logger.error("QMS-PMO-XB-error,result[" + resultObj.toJSONString() + "]");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue