|
|
|
@ -47,7 +47,6 @@ import java.text.SimpleDateFormat;
|
|
|
|
|
import java.util.*;
|
|
|
|
|
import java.util.function.Function;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
import java.util.stream.Stream;
|
|
|
|
|
|
|
|
|
|
@Service
|
|
|
|
|
@Slf4j
|
|
|
|
@ -1472,7 +1471,11 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
|
|
|
|
|
} else if (isItemReport) {
|
|
|
|
|
String reportSn = String.valueOf(snowflakeIdMaker.nextId());
|
|
|
|
|
MesProductVersion itemVersion = getMesProductVersion(mesBom.getItemPartNo(), mesWorkOrder.getOrganizeCode(), mesProductVersion.getProductVersion());
|
|
|
|
|
List<MesBom> bomList = mesBomService.findBomList(mesWorkOrder.getOrganizeCode(), itemPart, itemVersion.getAlternativePartList());
|
|
|
|
|
List<MesBom> bomList = null;
|
|
|
|
|
try {
|
|
|
|
|
bomList = findBomList(mesWorkOrder.getOrganizeCode(), itemPart, itemVersion.getAlternativePartList());
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
}
|
|
|
|
|
//bom下的子节汇报
|
|
|
|
|
if (!CollectionUtils.isEmpty(bomList)) {
|
|
|
|
|
for (MesBom bom : bomList) {
|
|
|
|
@ -1504,14 +1507,12 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
|
|
|
|
|
|
|
|
|
|
private Map<String, List<MesPartSap>> getPartSapMap(MesWorkOrder mesWorkOrder, List<String> itemPartNoList) {
|
|
|
|
|
List<MesPartSap> mesPartSapList = mesPartSapService.findMesPartSapByPartNoList(itemPartNoList, mesWorkOrder.getOrganizeCode());
|
|
|
|
|
Map<String, List<MesPartSap>> mesPartSapMap = mesPartSapList.stream().filter(t -> Objects.nonNull(t.getPartNo())).collect(Collectors.groupingBy(MesPartSap::getPartNo));
|
|
|
|
|
return mesPartSapMap;
|
|
|
|
|
return mesPartSapList.stream().filter(t -> Objects.nonNull(t.getPartNo())).collect(Collectors.groupingBy(MesPartSap::getPartNo));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private Map<String, List<MesPart>> getItemPartMap(MesWorkOrder mesWorkOrder, List<String> itemPartNoList) {
|
|
|
|
|
List<MesPart> itemPartList = iMesPartService.findMesPartByPartNoList(itemPartNoList, mesWorkOrder.getOrganizeCode());
|
|
|
|
|
Map<String, List<MesPart>> itemPartMap = itemPartList.stream().filter(t -> Objects.nonNull(t.getPartNo())).collect(Collectors.groupingBy(MesPart::getPartNo));
|
|
|
|
|
return itemPartMap;
|
|
|
|
|
return itemPartList.stream().filter(t -> Objects.nonNull(t.getPartNo())).collect(Collectors.groupingBy(MesPart::getPartNo));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private MesProdRuleSortCfg getMesProdRuleSortCfg(MesWorkOrder mesWorkOrder) {
|
|
|
|
@ -1545,7 +1546,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
|
|
|
|
|
private MesProductOffLine getMesProductOffLine(MesWorkOrder mesWorkOrder, MesProductVersion mesProductVersion,
|
|
|
|
|
String sn, MesBom mesBom,Double itemQty, boolean isItemReport,String nowTime) {
|
|
|
|
|
MesProductOffLine newMesProductOffLine = new MesProductOffLine();
|
|
|
|
|
BeanUtils.copyProperties(mesBom, newMesProductOffLine, "id");
|
|
|
|
|
BeanUtils.copyProperties(mesBom, newMesProductOffLine, "id","systemSyncStatus");
|
|
|
|
|
newMesProductOffLine.setReportPartNo(mesBom.getPartNo());
|
|
|
|
|
newMesProductOffLine.setReportPartNameRdd(mesBom.getPartName());
|
|
|
|
|
newMesProductOffLine.setAlort(mesProductVersion.getReceiveInventoryPoint());
|
|
|
|
@ -1581,8 +1582,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
|
|
|
|
|
|
|
|
|
|
private MesProductOffLine creatMesProductOffLine(MesWorkOrder mesWorkOrder, MesProductVersion mesProductVersion,
|
|
|
|
|
String sn, MesBom mesBom, boolean isItemReport,String nowTime,Integer bomTotalSize) {
|
|
|
|
|
MesProductOffLine newMesProductOffLine;
|
|
|
|
|
newMesProductOffLine = new MesProductOffLine();
|
|
|
|
|
MesProductOffLine newMesProductOffLine = new MesProductOffLine();
|
|
|
|
|
if (!isItemReport) {
|
|
|
|
|
newMesProductOffLine.setReportPartNo(mesWorkOrder.getPartNo());
|
|
|
|
|
newMesProductOffLine.setReportPartNameRdd(mesWorkOrder.getPartName());
|
|
|
|
|