流程生产订单审核后传出厂编号
This commit is contained in:
parent
984df6027e
commit
0e5e1d0aa9
|
@ -5,11 +5,16 @@ 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.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.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.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;
|
||||||
|
@ -55,6 +60,7 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
|
||||||
}
|
}
|
||||||
|
|
||||||
obmlog.info("开始同步生产订单到艾普MES系统,符合条件的订单数量: " + filteredOrders.size());
|
obmlog.info("开始同步生产订单到艾普MES系统,符合条件的订单数量: " + filteredOrders.size());
|
||||||
|
JSONArray jsonArray = new JSONArray();
|
||||||
// 推送到艾普MES系统
|
// 推送到艾普MES系统
|
||||||
for (PMOAggVO aggVO : filteredOrders) {
|
for (PMOAggVO aggVO : filteredOrders) {
|
||||||
PMOHeadVO head = aggVO.getParentVO();
|
PMOHeadVO head = aggVO.getParentVO();
|
||||||
|
@ -66,7 +72,14 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
|
||||||
}
|
}
|
||||||
JSONObject data = buildSyncData(aggVO);
|
JSONObject data = buildSyncData(aggVO);
|
||||||
pushData(data);
|
pushData(data);
|
||||||
|
|
||||||
|
JSONObject buildSyncData= buildSyncData1(aggVO);
|
||||||
|
jsonArray.add(buildSyncData);
|
||||||
}
|
}
|
||||||
|
if(jsonArray.size() > 0) {
|
||||||
|
pushData("/prj-v5-web/ext/api/releaseNo",jsonArray);
|
||||||
|
}
|
||||||
|
|
||||||
obmlog.info("生产订单同步到艾普MES系统处理完成。");
|
obmlog.info("生产订单同步到艾普MES系统处理完成。");
|
||||||
|
|
||||||
|
|
||||||
|
@ -245,4 +258,51 @@ public class AfterApproveSyncEpicMesRule implements IRule<PMOAggVO> {
|
||||||
return field;
|
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