From 6f4e2a22ac1b5276ea75dfdea292a8844d0c5371 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A7=E7=B1=B3?= <470431449@qq.com> Date: Fri, 30 Aug 2024 16:54:37 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9B=B4=E5=8F=91=E5=8C=85=EF=BC=8C=E5=8F=91?= =?UTF-8?q?=E8=B4=A7=E5=89=8D=E8=A3=85=E9=85=8D=E5=8C=85=E7=89=A9=E6=96=99?= =?UTF-8?q?=E4=B8=8D=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/BomNewPbomParentService.java | 6 +++++- .../bomnew/service/domain/EBom/EBomToPBom.java | 10 +++++----- .../service/domain/EBom/EBomToPBomFor31.java | 7 ++++++- .../topbomnew/EBomToPBomForFormal31New.java | 16 ++++++---------- .../EBom/topbomnew/EBomToPBomForFormalNew.java | 18 +++++------------- .../EBom/topbomnew/FormalEBomToPbomBase.java | 8 ++++++++ 6 files changed, 35 insertions(+), 30 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java index ae9bab04..05bc1ceb 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java @@ -418,7 +418,7 @@ public class BomNewPbomParentService extends ServiceImplStrUtil.isBlank(u.getFacCode())).collect(Collectors.toList()).forEach(u->u.setFacCode(parent.getFacCode())); +// paramDTO.getChildList().stream().filter(u->StrUtil.isBlank(u.getFacCode())).collect(Collectors.toList()).forEach(u->u.setFacCode(parent.getFacCode())); List childList = Convert.toList(BomNewPbomChildEntity.class, paramDTO.getChildList()); List childIds = paramDTO.getChildList().stream().map(BomNewPbomParentVO::getRowId).collect(Collectors.toList()); List pChildList = Lists.newArrayList(); @@ -1204,6 +1204,10 @@ public class BomNewPbomParentService extends ServiceImpl newChildren = this.getBaseMapper().getParentChild(newPBom.getBomRowId()); List newBomNoTChildren = newChildren.stream().filter(u -> !EBomConstant.PROJECT_TYPE_T.equalsIgnoreCase(u.getProjectType())).collect(Collectors.toList()); + if(oldBomNoTChildren.size()!=newBomNoTChildren.size()){ + newPBom.setCurrentVersion(VersionUtil.getNextVersion(oldParent.getCurrentVersion())); + } + Set oldChildSet = oldBomNoTChildren.stream().map(u -> u.getMaterialNoAndNum()).collect(Collectors.toSet()); Set newChildSet = newBomNoTChildren.stream().map(u -> u.getMaterialNoAndNum()).collect(Collectors.toSet()); diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPBom.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPBom.java index 399f4808..0770b459 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPBom.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomToPBom.java @@ -117,11 +117,11 @@ public class EBomToPBom extends EBomToPbomBase { //子级 List child = result.stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId()) && !childDelMaterialNos.contains(u.getMaterialNo())).distinct().collect(Collectors.toList()); - List mergeChild = mergeChild(child); - //判断pbom 是否一致 -// if( compareContentIsSame(vo, mergeChild, facCode) && !vo.getMaterialNo().equals(parent.getMaterialNo())){ -// continue; -// } + List mergeChild=child; + //直发包/发货前包不合并 + if(!VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){ + mergeChild = mergeChild(child); + } BomNewPbomParentEntity parentEnt = buildPBomParent(vo, facCode,parentList); if(Objects.isNull(parentEnt)){ continue; 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 0b43040d..08d51eff 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 @@ -117,7 +117,12 @@ public class EBomToPBomFor31 extends EBomToPbomBase { //子级 List child = facBomDataMp.get(facCode).stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId()) && !childDelMaterialNos.contains(u.getMaterialNo())).distinct().collect(Collectors.toList()); - List mergeChild = mergeChild(child); + List mergeChild=child; + //直发包/发货前包不合并 + if(!VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){ + mergeChild = mergeChild(child); + } + // if(compareContentIsSame(vo, mergeChild, facCode) && !vo.getMaterialNo().equals(parent.getMaterialNo())){ // continue; // } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/EBomToPBomForFormal31New.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/EBomToPBomForFormal31New.java index a3eb9778..e5bf8f23 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/EBomToPBomForFormal31New.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/EBomToPBomForFormal31New.java @@ -114,16 +114,12 @@ public class EBomToPBomForFormal31New extends FormalEBomToPbomBase { } //子级 List child = facBomDataMp.get(facCode).stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId()) && !childDelMaterialNos.contains(u.getMaterialNo())).distinct().collect(Collectors.toList()); - List mergeChild = mergeChild(child); - //对比PBOM 版本是否一致(跟节点除外) -// if(!parent.getMaterialNo().equals(vo.getMaterialNo()) && !VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){ -// continue; -// } -// if(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) || VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){ -// if(compareContentIsSame(vo,mergeChild,facCode)){ -// continue; -// } -// } + List mergeChild=child; + //直发包/发货前包不合并 + if(!VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){ + mergeChild = mergeChild(child); + } + BomNewPbomParentEntity parentEnt = buildPBomParent(vo, facCode,parentList); if(Objects.isNull(parentEnt)){ continue; diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/EBomToPBomForFormalNew.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/EBomToPBomForFormalNew.java index e86d0d3c..c3f85d46 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/EBomToPBomForFormalNew.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/EBomToPBomForFormalNew.java @@ -115,19 +115,11 @@ public class EBomToPBomForFormalNew extends FormalEBomToPbomBase { } //子级 List child = result.stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId()) && !childDelMaterialNos.contains(u.getMaterialNo())).distinct().collect(Collectors.toList()); - List mergeChild = mergeChild(child); - - //对比PBOM 版本是否一致(跟节点除外) -// if(!parent.getMaterialNo().equals(vo.getMaterialNo()) && !VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){ -// continue; -// } -// if(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) || VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){ -// if(compareContentIsSame(vo,mergeChild,facCode)){ -// continue; -// } -// } - - + List mergeChild=child; + //直发包/发货前包不合并 + if(!VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){ + mergeChild = mergeChild(child); + } BomNewPbomParentEntity parentEnt = buildPBomParent(vo, facCode,parentList); if(Objects.isNull(parentEnt)){ continue; diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/FormalEBomToPbomBase.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/FormalEBomToPbomBase.java index 5010cdad..9568eeec 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/FormalEBomToPbomBase.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/topbomnew/FormalEBomToPbomBase.java @@ -131,6 +131,14 @@ public abstract class FormalEBomToPbomBase { return false; + } + + /** + * pbom- 排除工艺包,新增行,更新行的处理 + * 1、 + */ + private void pBomHandler(BomNewEbomParentVO pVo){ + } //合并子级