|
|
|
@ -358,15 +358,25 @@ public class MesReportWorkConsumeServiceImpl implements IMesReportWorkConsumeSer
|
|
|
|
|
pTabs.setTitle("第"+i+"层工单物料损耗");
|
|
|
|
|
mesReportWorkConsume.setParentOrder("0");
|
|
|
|
|
List<MesReportWorkConsume> liblist0 = mesReportWorkConsumeMapper.getConsumeList(mesReportWorkConsume);
|
|
|
|
|
for(MesReportWorkConsume lib0:liblist0){
|
|
|
|
|
lib0.setQuantitySplitBom(lib0.getQuantity().divide(lib0.getQuantitySplit(),2,BigDecimal.ROUND_HALF_UP));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
BigDecimal actPro = BigDecimal.ZERO;
|
|
|
|
|
BigDecimal planPro = BigDecimal.ZERO;
|
|
|
|
|
if(!CollectionUtils.isEmpty(liblist0)){
|
|
|
|
|
BigDecimal actPro = mesReportWorkConsumeMapper.getActAllProduct(mesReportWorkConsume);
|
|
|
|
|
actPro = mesReportWorkConsumeMapper.getActAllProduct(mesReportWorkConsume);
|
|
|
|
|
liblist0.get(0).setQuantityFeedback(actPro);
|
|
|
|
|
|
|
|
|
|
planPro = liblist0.get(0).getQuantitySplit();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for(MesReportWorkConsume lib0:liblist0){
|
|
|
|
|
//bom用量=单位数量/订单理论数量*报工数量
|
|
|
|
|
lib0.setQuantitySplitBom(new BigDecimal(lib0.getErfmg())
|
|
|
|
|
.divide(lib0.getQuantitySplit(),6,BigDecimal.ROUND_HALF_UP)
|
|
|
|
|
.multiply(actPro)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
pTabs.setLibList(liblist0);
|
|
|
|
|
tabs.add(pTabs);
|
|
|
|
|
|
|
|
|
@ -379,7 +389,8 @@ public class MesReportWorkConsumeServiceImpl implements IMesReportWorkConsumeSer
|
|
|
|
|
mesReportWorkConsume.setWorkorderCode(sonWorkOrder.getWorkorderCode());
|
|
|
|
|
List<MesReportWorkConsume> liblist = mesReportWorkConsumeMapper.getConsumeList(mesReportWorkConsume);
|
|
|
|
|
for(MesReportWorkConsume lib:liblist){
|
|
|
|
|
lib.setQuantitySplitBom(lib.getQuantity().divide(lib.getQuantitySplit(),2,BigDecimal.ROUND_HALF_UP));
|
|
|
|
|
lib.setQuantitySplitBom(actPro.multiply(new BigDecimal(lib.getErfmg()))
|
|
|
|
|
.divide(planPro,6,BigDecimal.ROUND_HALF_UP));
|
|
|
|
|
}
|
|
|
|
|
sTabs.setLibList(liblist);
|
|
|
|
|
tabs.add(sTabs);
|
|
|
|
|