diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomImportService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomImportService.java index ed56e85d..b069bae8 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomImportService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomImportService.java @@ -132,11 +132,19 @@ public class DQBomImportService { if (oldParent != null) { if (!parent.getMaterialUnit().equals(oldParent.getMaterialUnit()) || !parent.getMaterialTexture().equals(oldParent.getMaterialTexture())) { - throw new NflgBusinessException(STATE.InconsistentDataError, ""); + throw new NflgBusinessException(STATE.InconsistentDataError, "物料信息不一致"); } + List cc = children.stream().filter(c -> c.getParentRowId().equals(parent.getRowId())) .map(BomNewDQbomChildEntity::getMaterialNo) .collect(Collectors.toList()); + List oc = dQBomChildService.lambdaQuery().eq(BomNewDQbomChildEntity::getParentRowId, oldParent.getRowId()) + .list() + .stream().map(BomNewDQbomChildEntity::getMaterialNo).collect(Collectors.toList()); + if (cc.size() != oc.size()) { + throw new NflgBusinessException(STATE.InconsistentDataError, "子级节点数量不一致"); + } + List ps = parents.stream().filter(p -> cc.contains(p.getMaterialNo())) .collect(Collectors.toList()); for (BomNewDQbomParentEntity p : ps) {