一般零部件-bomExists 问题

This commit is contained in:
luoliming 2024-06-25 23:41:02 +08:00
parent bf8a28cd55
commit f7bbd9ac7f
3 changed files with 8 additions and 7 deletions

View File

@ -101,7 +101,6 @@ public class EBomToPBomFor31 extends EBomToPbomBase {
for (String facCode : facCodes) {
List<BomNewEbomParentVO> parentList = ListCommonUtil.toDistinct(facBomDataMp.get(facCode).stream().filter(u -> u.getBomRowId() > 0)
.sorted(Comparator.comparing(BomNewEbomParentVO::getLevelNumber))
.collect(Collectors.toList()), BomNewEbomParentVO::getBomRowId);
for (BomNewEbomParentVO vo : parentList) {
String hasConvertKey = StrUtil.join("-", facCode, vo.getBomRowId());

View File

@ -349,8 +349,9 @@ public abstract class EBomToPbomBase {
}
private void changeImpactDo(BomNewEbomParentVO parentVO) {
List<BomNewEbomParentVO> subVos = allBomDetail.stream().filter(u -> u.getLevelNumber().compareTo(parentVO.getLevelNumber()) >= 0 && u.getLevelNumber().compareTo(NumberUtil.add(parentVO.getLevelNumber(), BigDecimal.valueOf(0.01))) < 0)
.sorted(Comparator.comparing(BomNewEbomParentVO::getLevelNumber)).collect(Collectors.toList());
List<BomNewEbomParentVO> subVos = getAllSubInListIncludeSelf(parentVO,allBomDetail);
// allBomDetail.stream().filter(u -> u.getLevelNumber().compareTo(parentVO.getLevelNumber()) >= 0 && u.getLevelNumber().compareTo(NumberUtil.add(parentVO.getLevelNumber(), BigDecimal.valueOf(0.01))) < 0)
// .sorted(Comparator.comparing(BomNewEbomParentVO::getLevelNumber)).collect(Collectors.toList());
List<BomNewEbomParentVO> subVosParent = subVos.stream().filter(u -> u.getBomRowId() > 0).collect(Collectors.toList());
for (BomNewEbomParentVO vo : subVosParent) {
if (compareVirtualPackage(vo)) {
@ -701,9 +702,9 @@ public abstract class EBomToPbomBase {
subResult.addAll(subMaterials);
List<Long> subMarterialBomRowIds = subMaterials.stream().filter(u -> u.getBomRowId() > 0).map(u -> u.getBomRowId()).collect(Collectors.toList());
if (CollUtil.isNotEmpty(subMarterialBomRowIds)) {
getAllSubData(subMarterialBomRowIds, subResult, list);
subMaterials = list.stream().filter(u -> subMarterialBomRowIds.contains(u.getParentRowId())).collect(Collectors.toList());
} else {
break;
subMaterials=Collections.emptyList();
}
}
}
@ -721,9 +722,9 @@ public abstract class EBomToPbomBase {
subResult.addAll(subMaterials);
List<Long> subMarterialBomRowIds = subMaterials.stream().filter(u -> u.getBomRowId() > 0).map(u -> u.getBomRowId()).collect(Collectors.toList());
if (CollUtil.isNotEmpty(subMarterialBomRowIds)) {
getAllSubData(subMarterialBomRowIds, subResult);
subMaterials=result.stream().filter(u -> subMarterialBomRowIds.contains(u.getParentRowId())).collect(Collectors.toList());
} else {
break;
subMaterials=Collections.emptyList();
}
}
}

View File

@ -89,6 +89,7 @@ public class PBomUpgrade {
pbomParent.setStatus(PBomStatusEnum.WAIT_PUBLISH.getValue());
pbomParent.setCurrentVersion(VersionUtil.getNextVersion(parentVO.getCurrentVersion()));
pbomParent.setModifyTime(LocalDateTime.now());
pbomParent.setDeptRowId(SessionUtil.getDepartRowId());
if (rootIs) {
pbomParent.setRootIs(1);
pbomParent.setUserRootIs(1);