流程生产订单审核后传出厂编号
This commit is contained in:
parent
984df6027e
commit
0e5e1d0aa9
|
@ -5,11 +5,16 @@ 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;
|
||||
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;
|
||||
|
@ -55,6 +60,7 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
|
|||
}
|
||||
|
||||
obmlog.info("开始同步生产订单到艾普MES系统,符合条件的订单数量: " + filteredOrders.size());
|
||||
JSONArray jsonArray = new JSONArray();
|
||||
// 推送到艾普MES系统
|
||||
for (PMOAggVO aggVO : filteredOrders) {
|
||||
PMOHeadVO head = aggVO.getParentVO();
|
||||
|
@ -66,7 +72,14 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
|
|||
}
|
||||
JSONObject data = buildSyncData(aggVO);
|
||||
pushData(data);
|
||||
|
||||
JSONObject buildSyncData= buildSyncData1(aggVO);
|
||||
jsonArray.add(buildSyncData);
|
||||
}
|
||||
if(jsonArray.size() > 0) {
|
||||
pushData("/prj-v5-web/ext/api/releaseNo",jsonArray);
|
||||
}
|
||||
|
||||
obmlog.info("生产订单同步到艾普MES系统处理完成。");
|
||||
|
||||
|
||||
|
@ -245,4 +258,51 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
|
|||
return field;
|
||||
}
|
||||
|
||||
private JSONObject buildSyncData1(PMOAggVO vo ) throws BusinessException {
|
||||
// [
|
||||
// {
|
||||
// "siteCode": "", // 工厂编码
|
||||
// "workOrderCode": "", // 工单号
|
||||
// "companyCode": "DLDZ", //公司编码
|
||||
// "companyName": "泰开电力电子",//公司名称
|
||||
// "releaseNo": [] // 出厂编号
|
||||
// }
|
||||
//]
|
||||
|
||||
JSONObject obj = new JSONObject();
|
||||
obj.put("siteCode", vo.getParentVO().getVbillcode()); // 已存在的billCode字段
|
||||
obj.put("workOrderCode", null);
|
||||
|
||||
BaseDAO dao = new BaseDAO();
|
||||
String orgsql = "select code,name from org_factory where pk_factory = '" + vo.getParentVO().getPk_org() + "' ";
|
||||
Map<String,Object> tr = (Map<String, Object>) 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()){
|
||||
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);
|
||||
jsonArray.add(detailItem);
|
||||
}
|
||||
obj.put("releaseNo", jsonArray);
|
||||
|
||||
return obj;
|
||||
}
|
||||
private void pushData(String requestUrl, JSONArray param) throws BusinessException {
|
||||
String baseUrl = SysParaInitQuery.getParaString("GLOBLE00000000000000", "EPICMESURL");
|
||||
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);
|
||||
|
||||
if ("false".equals(resultObj.getString("success"))) {
|
||||
throw new BusinessException("EpicMes-Material-failerror:" + resultObj.getString("msg"));
|
||||
} else {
|
||||
Logger.error("EpicMes-Material-suc,result[" + resultObj.toJSONString() + "]");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue