From f7bbd9ac7f2a14da58edede33073bdb19e3db2fc Mon Sep 17 00:00:00 2001 From: luoliming Date: Tue, 25 Jun 2024 23:41:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=80=E8=88=AC=E9=9B=B6=E9=83=A8=E4=BB=B6-b?= =?UTF-8?q?omExists=20=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bomnew/service/domain/EBom/EBomToPBomFor31.java | 1 - .../bomnew/service/domain/EBom/EBomToPbomBase.java | 13 +++++++------ .../bomnew/service/domain/PBom/PBomUpgrade.java | 1 + 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPBomFor31.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPBomFor31.java index 10bdf3f3..9b98255d 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPBomFor31.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPBomFor31.java @@ -101,7 +101,6 @@ public class EBomToPBomFor31 extends EBomToPbomBase { for (String facCode : facCodes) { List 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()); diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPbomBase.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPbomBase.java index 17538ceb..d2ee4af6 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPbomBase.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPbomBase.java @@ -349,8 +349,9 @@ public abstract class EBomToPbomBase { } private void changeImpactDo(BomNewEbomParentVO parentVO) { - List 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 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 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 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 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(); } } } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/PBom/PBomUpgrade.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/PBom/PBomUpgrade.java index 21b6646f..86b333da 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/PBom/PBomUpgrade.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/PBom/PBomUpgrade.java @@ -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);