diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java index 7b4127cb..8cb8239b 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java @@ -993,6 +993,25 @@ public class BomNewEbomParentService extends ServiceImpl pbomParent = eBomToPBom.getPBomParentResult().stream().filter(p -> (p.getMaterialDesc().contains("电控系统") && p.getMaterialDesc().contains("直发")) || + (p.getMaterialDesc().contains("电控系统") && p.getMaterialDesc().contains("制作"))).collect(Collectors.toList()); + eBomToPBom.getPBomParentResult().removeAll(pbomParent); + //2、删掉pbom 子级的数据 + List pbomChild = eBomToPBom.getPBomChildResult().stream() + .filter(c -> pbomParent.stream().map(BomNewPbomParentEntity::getRowId).collect(Collectors.toList()).contains(c.getParentRowId())) + .collect(Collectors.toList()); + eBomToPBom.getPBomChildResult().removeAll(pbomChild); + if(!pbomParent.isEmpty()){ + //3、删掉ebom 父级的数据 + List ebomParentIdList = pbomParent.stream().map(BomNewPbomParentEntity::getSourceRowId).collect(Collectors.toList()); + this.delBatch(ebomParentIdList); + //4、删掉ebom 子级的数据 + ebomChildService.remove(Wrappers.lambdaQuery().in(BomNewEbomChildEntity::getParentRowId,ebomParentIdList)); + } + } if (CollUtil.isNotEmpty(eBomToPBom.getPBomParentResult())) { pBomParentService.saveOrUpdateBatch(eBomToPBom.getPBomParentResult()); diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomExportToSAPImpl.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomExportToSAPImpl.java index 60d36ece..7171ac35 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomExportToSAPImpl.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomExportToSAPImpl.java @@ -141,14 +141,17 @@ public class BomNewPbomExportToSAPImpl implements IBomNewPbomExportToSAP { private Long getZFBBomRowId(List children) { Long ddpRowId = null; + //电控系统的无须增加 直发包parent记录 by 10002327 240918 BomNewPbomChildEntity czfb = children.stream() - .filter(c -> Objects.equals(c.getVirtualPartType(), VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getValue())) + .filter(c -> Objects.equals(c.getVirtualPartType(), VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getValue()) + && !c.getMaterialDesc().contains("电控系统")) .findFirst() .orElse(null); if (Objects.nonNull(czfb)) { BomNewPbomParentEntity cpttp = getParent(czfb); // VUtils.isTure(Objects.isNull(cpttp)).throwMessage(StrUtil.format("顶层直发包({})对应的parent丢失", czfb.getMaterialNo())); - if (Objects.isNull(cpttp)) { + + if (Objects.isNull(cpttp) ) { //添加直发包的parent cpttp = addZFBParent(czfb); } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java index b8c2de7e..b0e06d42 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java @@ -514,8 +514,9 @@ public class DQBomService { buildTree(root, parents, children); dQBomParentService.updateBatchById(parents); dQBomChildService.updateBatchById(children); - savePbomParents(parents, root.getMaterialNo().startsWith("31") ? PBomStatusEnum.FACTORY_CONFIRM : PBomStatusEnum.PUBLISH); - savePbomChildren(children, parents); + //电气BOM发布正式版之后,不再写入导入PBOM中 by 10002327 240914 + //savePbomParents(parents, root.getMaterialNo().startsWith("31") ? PBomStatusEnum.FACTORY_CONFIRM : PBomStatusEnum.PUBLISH); + //savePbomChildren(children, parents); // CompletableFuture.runAsync(() -> { // bomNewPbomParentService.getBaseMapper().updatePBomMaterialUse();