diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomExportToSAP.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomExportToSAP.java index fa6ae997..850f3c31 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomExportToSAP.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomExportToSAP.java @@ -174,7 +174,7 @@ public class BomNewEbomExportToSAP { BomNewEbomParentEntity p = bomNewEbomParentService.lambdaQuery() .select(BomNewEbomParentEntity::getRowId, BomNewEbomParentEntity::getMaterialNo , BomNewEbomParentEntity::getMaterialDesc, BomNewEbomParentEntity::getUserRootIs - , BomNewEbomParentEntity::getSource) + , BomNewEbomParentEntity::getSource, BomNewEbomParentEntity::getSapState) .eq(BomNewEbomParentEntity::getMaterialNo, c.getMaterialNo()) // .eq(BomNewEbomParentEntity::getUserRootIs, 0) .eq(BomNewEbomParentEntity::getStatus, EBomStatusEnum.PUBLISHED.getValue()) @@ -182,7 +182,7 @@ public class BomNewEbomExportToSAP { .orderByDesc(BomNewEbomParentEntity::getCurrentVersion) .last(" limit 1") .one(); - if (Objects.nonNull(p) && p.getSapState() >= SapStatusEnum.PUB_ERROR.getValue()) { + if (Objects.nonNull(p) && Objects.nonNull(p.getSapState()) && p.getSapState() >= SapStatusEnum.PUB_ERROR.getValue()) { liPIds.add(p.getRowId()); } return p; 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 87f1d3d5..db3ea11b 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 @@ -160,6 +160,10 @@ public class BomNewPbomExportToSAPImpl implements IBomNewPbomExportToSAP { } private BomNewPbomParentEntity addZFBParent(BomNewPbomChildEntity child) { + BomNewPbomParentEntity tp = bomNewPbomParentService.lambdaQuery() + .eq(BomNewPbomParentEntity::getMaterialNo, child.getMaterialNo()) + .eq(BomNewPbomParentEntity::getFacCode, child.getFacCode()) + .one(); BomNewPbomParentEntity parent = new BomNewPbomParentEntity(); parent.setRowId(IdWorker.getId()); parent.setCreatedTime(LocalDateTime.now()); @@ -170,7 +174,13 @@ public class BomNewPbomExportToSAPImpl implements IBomNewPbomExportToSAP { parent.setBatchNo(""); parent.setCreatedBy(SessionUtil.getUserCode()); parent.setCreatedJob(UserJobEnum.ENGINEER.getValue()); - parent.setCurrentVersion(VersionUtil.getNextVersion("")); + if (Objects.isNull(tp)) { + parent.setCurrentVersion(VersionUtil.getNextVersion("")); + } else { + parent.setCurrentVersion(tp.getCurrentVersion()); + tp.setCurrentVersion(VersionUtil.getNextVersion(tp.getCurrentVersion())); + bomNewPbomParentService.updateById(tp); + } parent.setDeptRowId(SessionUtil.getDepartRowId()); parent.setDeptName(SessionUtil.getDepartName()); parent.setDeviseName(SessionUtil.getRealName()); @@ -341,7 +351,7 @@ public class BomNewPbomExportToSAPImpl implements IBomNewPbomExportToSAP { .orderByDesc(BomNewPbomParentEntity::getCurrentVersion) .last(" limit 1") .one(); - if (Objects.nonNull(parent) && parent.getSapState() >= SapStatusEnum.PUB_ERROR.getValue()) { + if (Objects.nonNull(parent) && Objects.nonNull(parent.getSapState()) && parent.getSapState() >= SapStatusEnum.PUB_ERROR.getValue()) { liPIds.add(parent.getRowId()); } return parent; diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/PBom/PBomUpgrade.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/PBom/PBomUpgrade.java index a2a96724..99a2cbe6 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/PBom/PBomUpgrade.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/PBom/PBomUpgrade.java @@ -98,7 +98,6 @@ public class PBomUpgrade { pbomParent.setTechnologyUserCode(SessionUtil.getUserCode()); pbomParent.setRemark(""); pbomParent.setSource(PbomSourceEnum.FROM_CHANGE.getValue()); - pbomParent.setSourceStatus(PbomSourceStatusEnum.PBOM.getValue()); pbomParent.setReleaseTime(null); pbomParent.setReleaseUserName(null); pbomParent.setSapState(1); @@ -135,7 +134,6 @@ public class PBomUpgrade { child.setCreatedBy(SessionUtil.getUserCode()); child.setModifyTime(null); child.setSource(PbomSourceEnum.FROM_CHANGE.getValue()); - child.setSourceStatus(PbomSourceStatusEnum.PBOM.getValue()); child.setRemark(""); this.childResult.add(child); }