F提层后造成的空包要递归往上检查删除2-先不发生产

This commit is contained in:
大米 2024-08-15 22:10:42 +08:00
parent ad91ce1a18
commit a5095fe55a
1 changed files with 22 additions and 13 deletions

View File

@ -739,7 +739,7 @@ public abstract class EBomToPbomBase {
else { else {
addEBomNew.add(parentBom.getBomRowId()); addEBomNew.add(parentBom.getBomRowId());
} }
}
//如子级都为F 项父级也不转 //如子级都为F 项父级也不转
Set<String> projectSet = newParentChild.stream().map(u -> u.getProjectType().toUpperCase()).collect(Collectors.toSet()); Set<String> projectSet = newParentChild.stream().map(u -> u.getProjectType().toUpperCase()).collect(Collectors.toSet());
if (CollUtil.isNotEmpty(projectSet)) { if (CollUtil.isNotEmpty(projectSet)) {
@ -750,9 +750,12 @@ public abstract class EBomToPbomBase {
childDelMaterialNos.add(parentBom.getMaterialNo()); childDelMaterialNos.add(parentBom.getMaterialNo());
} }
} }
}
} }
List<BomNewEbomParentVO> FzItem = allBomDetail.stream().filter(u -> StrUtil.isNotBlank(u.getProjectType()) && ImmutableList.of("F", "Z").contains(u.getProjectType())).collect(Collectors.toList());
FzItem.forEach(u->{
u.setNotToPBomForFZ(BomConstant.YES);
});
//递归 FZ项所有父级 //递归 FZ项所有父级
handlerFZEmptyBom(); handlerFZEmptyBom();
@ -764,9 +767,11 @@ public abstract class EBomToPbomBase {
List<BomNewEbomParentVO> parentBoms = getParentForAllSubNodeIsNotToPBomForFZ(); List<BomNewEbomParentVO> parentBoms = getParentForAllSubNodeIsNotToPBomForFZ();
while (CollUtil.isNotEmpty(parentBoms)){ while (CollUtil.isNotEmpty(parentBoms)){
parentBoms.forEach(u->{ parentBoms.forEach(u->{
if (!VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getProductTypeKey().equals(u.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getProductTypeKey().equals(u.getVirtualPartType())) {
u.setNoConvertToPBomIs(1); u.setNoConvertToPBomIs(1);
u.setNotToPBomForFZ(BomConstant.YES); u.setNotToPBomForFZ(BomConstant.YES);
childDelMaterialNos.add(u.getMaterialNo()); childDelMaterialNos.add(u.getMaterialNo());
}
}); });
parentBoms = getParentForAllSubNodeIsNotToPBomForFZ(); parentBoms = getParentForAllSubNodeIsNotToPBomForFZ();
} }
@ -811,6 +816,10 @@ public abstract class EBomToPbomBase {
} }
List<BomNewEbomParentVO> FzItem = allBomDetail.stream().filter(u -> StrUtil.isNotBlank(u.getProjectType()) && ImmutableList.of("F", "Z").contains(u.getProjectType())).collect(Collectors.toList());
FzItem.forEach(u->{
u.setNotToPBomForFZ(BomConstant.YES);
});
//递归 FZ项所有父级 //递归 FZ项所有父级
handlerFZEmptyBom(); handlerFZEmptyBom();