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){ + } //合并子级