diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/EbomApi.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/EbomApi.java index 47553ef5..6a949986 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/EbomApi.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/EbomApi.java @@ -377,7 +377,7 @@ public class EbomApi extends BaseApi { public ResultVO temporary(@RequestBody BomNewEBomParentEditDTO dto) throws ExecutionException, InterruptedException { checkDeleteRule(dto); - bomNewEbomParentService.deleteBomChild(dto.getDelDatas()); + bomNewEbomParentService.deleteBomChild(dto.getDelDatas(), dto.getParent()); BomNewEbomParentVO temporary = bomNewEbomParentService.temporary(dto); return ResultVO.success(temporary); @@ -388,7 +388,7 @@ public class EbomApi extends BaseApi { @LogRecord(success = "Ebom-暂存添加,物料编码:{{#dto.parent.materialNo}}-版本:{{#dto.parent.currentVersion}},操作结果:{{#_ret.state}} {{#_ret.msg}}", bizNo = "{{#dto.parent.rowId}}", type = "Ebom-暂存添加") public ResultVO temporaryAdd(@RequestBody BomNewEBomParentEditDTO dto) throws ExecutionException, InterruptedException { checkDeleteRule(dto); - bomNewEbomParentService.deleteBomChild(dto.getDelDatas()); + bomNewEbomParentService.deleteBomChild(dto.getDelDatas(), dto.getParent()); BomNewEbomParentVO temporary = bomNewEbomParentService.temporary(dto); // bomNewEbomParentService.getBaseMapper().updateRootForWaitReview(); return ResultVO.success(temporary); @@ -399,7 +399,7 @@ public class EbomApi extends BaseApi { @LogRecord(success = "Ebom-提交添加,物料编码:{{#dto.parent.materialNo}}-版本:{{#dto.parent.currentVersion}},操作结果:{{#_ret.state}} {{#_ret.msg}}", bizNo = "{{#dto.parent.rowId}}", type = "Ebom-提交添加") public ResultVO submitAdd(@RequestBody BomNewEBomParentEditDTO dto) throws ExecutionException, InterruptedException { checkDeleteRule(dto); - bomNewEbomParentService.deleteBomChild(dto.getDelDatas()); + bomNewEbomParentService.deleteBomChild(dto.getDelDatas(), dto.getParent()); return ResultVO.success(bomNewEbomParentService.submit(dto)); } @@ -409,7 +409,7 @@ public class EbomApi extends BaseApi { @LogRecord(success = "Ebom-提交,物料编码:{{#dto.parent.materialNo}}-版本:{{#dto.parent.currentVersion}},操作结果:{{#_ret.state}} {{#_ret.msg}}", bizNo = "{{#dto.parent.rowId}}", type = "Ebom-提交") public ResultVO submit(@RequestBody BomNewEBomParentEditDTO dto) throws ExecutionException, InterruptedException { checkDeleteRule(dto); - bomNewEbomParentService.deleteBomChild(dto.getDelDatas()); + bomNewEbomParentService.deleteBomChild(dto.getDelDatas(), dto.getParent()); return ResultVO.success(bomNewEbomParentService.submit(dto)); } @@ -464,7 +464,7 @@ public class EbomApi extends BaseApi { */ @PostMapping("queryMaterials") @ApiOperation("批量查询物料信息") - public ResultVO> queryMaterials(@Valid @RequestBody @NotEmpty List query) { + public ResultVO> queryMaterials(@Valid @RequestBody @NotEmpty List query) { return ResultVO.success(bomNewEbomParentService.queryMaterials(query)); } 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 ef86e871..be32b7e9 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 @@ -1980,7 +1980,7 @@ public class BomNewEbomParentService extends ServiceImpl delList) { + public void deleteBomChild(List delList, BomNewEbomParentVO parent) { if (CollUtil.isEmpty(delList)) { return; } @@ -1993,12 +1993,15 @@ public class BomNewEbomParentService extends ServiceImpl delTagList = new ArrayList<>(); //检查原始bom里过来数据是否包含正常数据 - List check1List = delChildList.stream().filter(u -> Objects.equals(EBomSourceEnum.FROM_BOM.getValue(), u.getSource()) - && Objects.equals(u.getExceptionStatus(), EBomExceptionStatusEnum.OK.getValue())).collect(Collectors.toList()); - - if (CollUtil.isNotEmpty(check1List)) { - throw new NflgBusinessException(STATE.Error, StrUtil.format("从原始Bom导入的数据,数据没有异常的情况下,{} 不可以删除 ", StrUtil.join(",", check1List.stream().map(BomNewEbomChildEntity::getMaterialNo).collect(Collectors.toList())))); - } + // List check1List = delChildList.stream().filter(u -> Objects.equals(EBomSourceEnum.FROM_BOM.getValue(), u.getSource()) + // && Objects.equals(u.getExceptionStatus(), EBomExceptionStatusEnum.OK.getValue())).collect(Collectors.toList()); + // + // if (CollUtil.isNotEmpty(check1List)) { + // throw new NflgBusinessException(STATE.Error, StrUtil.format("从原始Bom导入的数据,数据没有异常的情况下,{} 不可以删除 ", StrUtil.join(",", check1List.stream().map(BomNewEbomChildEntity::getMaterialNo).collect(Collectors.toList())))); + // } + VUtils.isTure(parent.getMaterialNo().startsWith("31") + && delChildList.stream().anyMatch(d -> !Objects.equals(d.getVirtualPartType(), VirtualPackageTypeEnum.UN_VIRTUAL_PACKAGE.getValue()))) + .throwMessage("不能删除31码下的虚拟包"); //检查有bom数据关系是否可以删? // List check2List = delList.stream().filter(u -> Objects.equals(EBomSourceEnum.FROM_BOM.getValue(), u.getSource()) @@ -2364,7 +2367,7 @@ public class BomNewEbomParentService extends ServiceImpl queryMaterials(List query) { + public List queryMaterials(List query) { List datas = new ArrayList<>(); List keys = query.stream().map(QueryMaterialsQuery::getMaterialNo) .filter(StrUtil::isNotBlank) @@ -2381,7 +2384,7 @@ public class BomNewEbomParentService extends ServiceImpl