|
|
@ -460,7 +460,7 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService {
|
|
|
|
//三层以上工单报工
|
|
|
|
//三层以上工单报工
|
|
|
|
logger.info("==========================三层(第"+n+"层)以上工单("+sHzWorks.getWorkorderCodeSap()+")报工开始");
|
|
|
|
logger.info("==========================三层(第"+n+"层)以上工单("+sHzWorks.getWorkorderCodeSap()+")报工开始");
|
|
|
|
sHzWorks.setMachineCode(mesReportWork.getMachineCode());
|
|
|
|
sHzWorks.setMachineCode(mesReportWork.getMachineCode());
|
|
|
|
sapRson = this.reportHzToSap(sHzWorks);
|
|
|
|
sapRson = this.reportHzToSap3(sHzWorks);
|
|
|
|
logger.info("==========================三层(第"+n+"层)以上工单("+sHzWorks.getWorkorderCodeSap()+")报工结束:"
|
|
|
|
logger.info("==========================三层(第"+n+"层)以上工单("+sHzWorks.getWorkorderCodeSap()+")报工结束:"
|
|
|
|
+ JSONObject.toJSONString(sapRson));
|
|
|
|
+ JSONObject.toJSONString(sapRson));
|
|
|
|
if (sapRson.getCode() == 200) {
|
|
|
|
if (sapRson.getCode() == 200) {
|
|
|
@ -658,6 +658,65 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService {
|
|
|
|
// return R.ok();//测试
|
|
|
|
// return R.ok();//测试
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* 报工反复修改,为了不影响已经运行平稳得一层和二层报工,三层单独拉出来运行
|
|
|
|
|
|
|
|
* @param workOrder
|
|
|
|
|
|
|
|
* @return
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
private R reportHzToSap3(MesReportWork workOrder) {
|
|
|
|
|
|
|
|
Date nowTime = DateUtils.getNowDate();
|
|
|
|
|
|
|
|
SapRFW sapRFW = new SapRFW();
|
|
|
|
|
|
|
|
sapRFW.setAufnr(workOrder.getWorkorderCodeSap());//虚拟工单号
|
|
|
|
|
|
|
|
sapRFW.setGamng(workOrder.getQuantityFeedback().toString());//报工数量
|
|
|
|
|
|
|
|
SapRFW.lt_gs ltgs = new SapRFW.lt_gs();//生产订单报工工时修改
|
|
|
|
|
|
|
|
ltgs.setConf_activity1(workOrder.getSac1());//机器
|
|
|
|
|
|
|
|
ltgs.setConf_activity2(workOrder.getSac2());//人工
|
|
|
|
|
|
|
|
ltgs.setConf_activity3(workOrder.getSac1());//折旧
|
|
|
|
|
|
|
|
ltgs.setConf_activity4(workOrder.getSac2());//其它
|
|
|
|
|
|
|
|
// ltgs.setConf_activity5(workOrder.getSac5());
|
|
|
|
|
|
|
|
// ltgs.setConf_activity6(workOrder.getSac6());
|
|
|
|
|
|
|
|
sapRFW.setLt_gs(ltgs);
|
|
|
|
|
|
|
|
List<SapRFW.lt_hw> lt_hwList = new ArrayList<>();
|
|
|
|
|
|
|
|
MesReportWorkConsume consumeqo = new MesReportWorkConsume();
|
|
|
|
|
|
|
|
consumeqo.setWorkorderCode(workOrder.getWorkorderCode());
|
|
|
|
|
|
|
|
consumeqo.setRecoil("X");
|
|
|
|
|
|
|
|
consumeqo.setMachineCode(workOrder.getMachineCode());
|
|
|
|
|
|
|
|
List<MesReportWorkConsume> consumes = mesReportWorkConsumeMapper.getSumConsumeList(consumeqo);
|
|
|
|
|
|
|
|
if (!CollectionUtils.isEmpty(consumes)) {
|
|
|
|
|
|
|
|
for (MesReportWorkConsume consume : consumes) {
|
|
|
|
|
|
|
|
SapRFW.lt_hw lthw = new SapRFW.lt_hw();//MES生产订单报工货物移动修改
|
|
|
|
|
|
|
|
lthw.setEntry_qnt(consume.getQuantity() + "");//数量
|
|
|
|
|
|
|
|
lthw.setMaterial(consume.getMaterialCode());//物料编码
|
|
|
|
|
|
|
|
if(StringUtils.isNotBlank(consume.getRspos())){//自主加的物料
|
|
|
|
|
|
|
|
lthw.setRspos(consume.getRspos());//sap物料项目凭证
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
int xhnumber = mesReportWorkConsumeMapper.getSumConsumeListNum(consumeqo);;
|
|
|
|
|
|
|
|
String paddedNumber = String.format("%04d", xhnumber);
|
|
|
|
|
|
|
|
lthw.setRspos(paddedNumber);//sap物料项目凭证(手动添加的,系统进行累加)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
lt_hwList.add(lthw);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
sapRFW.setLt_hwList(lt_hwList);
|
|
|
|
|
|
|
|
sapRFW.setAnzma(workOrder.getSapCode());//产线编号
|
|
|
|
|
|
|
|
sapRFW.setRemark(workOrder.getRemark());//备注
|
|
|
|
|
|
|
|
logger.info(workOrder.getWorkorderCodeSap() + "sap工单报工请求:" + JSONObject.toJSONString(sapRFW));
|
|
|
|
|
|
|
|
R r = remoteSapService.sapRFWOrder(sapRFW);
|
|
|
|
|
|
|
|
logger.info(workOrder.getWorkorderCodeSap() + "sap工单报工结果:" + r.getCode() + "," + r.getData() + "," + r.getMsg());
|
|
|
|
|
|
|
|
//上传成功,更改mes_report_work状态
|
|
|
|
|
|
|
|
if (r.getCode() == 200) {
|
|
|
|
|
|
|
|
workOrder.setUploadStatus("1");
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
workOrder.setUploadStatus("2");
|
|
|
|
|
|
|
|
workOrder.setUploadMsg(r.getMsg());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
workOrder.setUploadTime(nowTime);
|
|
|
|
|
|
|
|
mesReportWorkMapper.updateSyncSapStatus(workOrder);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return r;
|
|
|
|
|
|
|
|
// return R.ok();//测试
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
*预报工专用
|
|
|
|
*预报工专用
|
|
|
|
* @param workOrder
|
|
|
|
* @param workOrder
|
|
|
|