diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/review/executor/command/QualOnSiteReviewUpdateCmdExe.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/review/executor/command/QualOnSiteReviewUpdateCmdExe.java index 603e712..e288871 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/review/executor/command/QualOnSiteReviewUpdateCmdExe.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/review/executor/command/QualOnSiteReviewUpdateCmdExe.java @@ -45,6 +45,7 @@ public class QualOnSiteReviewUpdateCmdExe { private final QualOnSiteReviewFileCmdConvertor qualOnSiteReviewFileCmdConvertor; private final QualFilingGateway qualFilingGateway; private final QualFilingMapper qualFilingMapper; + private final QualFilingChangeMapper qualFilingChangeMapper; private final QualFilingCommitmentMapper qualFilingCommitmentMapper; private final QualFilingEquipmentMapper qualFilingEquipmentMapper; private final QualFilingMaterialMapper qualFilingMaterialMapper; @@ -148,7 +149,7 @@ public class QualOnSiteReviewUpdateCmdExe { } // 审查通过时,更新备案状态为已备案 - if (passed && reviewDO.getBizId() != null) { + if (passed) { QualFilingEntity filingEntity = new QualFilingEntity(); filingEntity.setId(reviewDO.getBizId()); filingEntity.setFilingStatusCode(QualFilingStatusEnum.FILED.getCode()); @@ -191,6 +192,13 @@ public class QualOnSiteReviewUpdateCmdExe { } Long filingId = qualFilingDO.getId(); + // 检查是否已存在资质变更记录,若已存在则不允许再次保存 + Long changeCount = qualFilingChangeMapper.selectCount(new LambdaQueryWrapper() + .eq(QualFilingChangeDO::getFilingId, filingId)); + if (changeCount != null && changeCount > 0) { + throw new BizException("已经保存不能再次保存"); + } + // 审核通过,需要新增资质变更记录 AggregationSaveOrEditQualFilingChangeCmd cmdSync = new AggregationSaveOrEditQualFilingChangeCmd();