dev
luotaiqian 2026-07-14 14:34:39 +08:00
parent 1b79f396e9
commit 02b03ca5c9
2 changed files with 22 additions and 6 deletions

View File

@ -1,7 +1,7 @@
package org.qinan.safetyeval.app.executor; package org.qinan.safetyeval.app.executor;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.qinan.safetyeval.app.orchestrator.QualFilingOrchestrator; import org.qinan.safetyeval.app.orchestrator.QualFilingOrchestrator;
import org.qinan.safetyeval.client.api.QualFilingApi; import org.qinan.safetyeval.client.api.QualFilingApi;
import org.qinan.safetyeval.client.change.request.QualFilingCommitmentChangeAddCmd; import org.qinan.safetyeval.client.change.request.QualFilingCommitmentChangeAddCmd;
@ -12,11 +12,15 @@ import org.qinan.safetyeval.client.co.QualFilingCO;
import org.qinan.safetyeval.client.co.QualFilingComplianceCheckResultCO; import org.qinan.safetyeval.client.co.QualFilingComplianceCheckResultCO;
import org.qinan.safetyeval.client.co.QualFilingDetailCO; import org.qinan.safetyeval.client.co.QualFilingDetailCO;
import org.qinan.safetyeval.client.dto.*; import org.qinan.safetyeval.client.dto.*;
import org.qinan.safetyeval.domain.constant.BooleanQAEnum;
import org.qinan.safetyeval.domain.constant.QualFilingApplyTypeEnum; import org.qinan.safetyeval.domain.constant.QualFilingApplyTypeEnum;
import org.qinan.safetyeval.domain.constant.QualFilingReviewResultEnum; import org.qinan.safetyeval.domain.constant.QualFilingReviewResultEnum;
import org.qinan.safetyeval.domain.entity.*; import org.qinan.safetyeval.domain.entity.*;
import org.qinan.safetyeval.domain.exception.BizException;
import org.qinan.safetyeval.domain.exception.ErrorCode;
import org.qinan.safetyeval.domain.query.PageResult; import org.qinan.safetyeval.domain.query.PageResult;
import org.qinan.safetyeval.domain.service.QualFilingDomainService; import org.qinan.safetyeval.domain.service.QualFilingDomainService;
import org.qinan.safetyeval.infrastructure.adapter.ThreadLocalUserInfoAdapter;
import org.qinan.safetyeval.infrastructure.dataobject.*; import org.qinan.safetyeval.infrastructure.dataobject.*;
import org.qinan.safetyeval.infrastructure.mapper.*; import org.qinan.safetyeval.infrastructure.mapper.*;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@ -163,15 +167,26 @@ public class QualFilingExecutor implements QualFilingApi {
@Override @Override
public SingleResponse<QualFilingCO> aggregationSaveOrEdit(AggregationSaveOrEditQualFilingCmd cmd) { public SingleResponse<QualFilingCO> aggregationSaveOrEdit(AggregationSaveOrEditQualFilingCmd cmd) {
// 新增时校验用当前id查询记录获取org_id若同机构已存在其他资质备案记录则不允许新增
Long currentId = cmd.getQualFilingAddCmd().getId();
if (currentId == null) {
Long count = qualFilingMapper.selectCount(new LambdaQueryWrapper<QualFilingDO>()
.eq(QualFilingDO::getOrgId, ThreadLocalUserInfoAdapter.getOrgId())
.eq(QualFilingDO::getDeleteEnum, BooleanQAEnum.FALSE.getValue()));
if (count != null && count > 0) {
throw new BizException(ErrorCode.QUAL_FILING_ALREADY_EXISTS);
}
}
QualFilingCO co = new QualFilingCO(); QualFilingCO co = new QualFilingCO();
BeanUtils.copyProperties(cmd.getQualFilingAddCmd(), co); BeanUtils.copyProperties(cmd.getQualFilingAddCmd(), co);
// 拷贝基本信息 // 拷贝基本信息
QualFilingEntity entity = new QualFilingEntity(); QualFilingEntity entity = new QualFilingEntity();
BeanUtils.copyProperties(cmd.getQualFilingAddCmd(),entity); BeanUtils.copyProperties(cmd.getQualFilingAddCmd(), entity);
entity.setBusinessScope(JSON.toJSONString(cmd.getQualFilingAddCmd().getBusinessScope())); entity.setBusinessScope(JSON.toJSONString(cmd.getQualFilingAddCmd().getBusinessScope()));
//备案承诺书 //备案承诺书
QualFilingCommitmentEntity commitmentEntity = new QualFilingCommitmentEntity(); QualFilingCommitmentEntity commitmentEntity = new QualFilingCommitmentEntity();
BeanUtils.copyProperties(cmd.getQualFilingCommitmentAddCmd(),commitmentEntity); BeanUtils.copyProperties(cmd.getQualFilingCommitmentAddCmd(), commitmentEntity);
//备案装备 //备案装备
List<QualFilingEquipmentEntity> equipmentEntities = cmd.getQualFilingEquipmentAddCmds().stream().map(item -> { List<QualFilingEquipmentEntity> equipmentEntities = cmd.getQualFilingEquipmentAddCmds().stream().map(item -> {
QualFilingEquipmentEntity equipmentEntity = new QualFilingEquipmentEntity(); QualFilingEquipmentEntity equipmentEntity = new QualFilingEquipmentEntity();
@ -199,9 +214,9 @@ public class QualFilingExecutor implements QualFilingApi {
return personnelCertEntity; return personnelCertEntity;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
} }
Long id = qualFilingDomainService.aggregationSaveOrEdit(entity, commitmentEntity, equipmentEntities, materialEntities, personnelEntities, personnelCertEntities); Long id = qualFilingDomainService.aggregationSaveOrEdit(entity, commitmentEntity, equipmentEntities, materialEntities, personnelEntities, personnelCertEntities);
co.setId(id); co.setId(id);
return SingleResponse.success(co); return SingleResponse.success(co);
} }
@Override @Override

View File

@ -75,6 +75,7 @@ public enum ErrorCode {
QUAL_FILING_CHANGE_NO_DIFF("02-02-101", "备案信息无变更,无需提交"), QUAL_FILING_CHANGE_NO_DIFF("02-02-101", "备案信息无变更,无需提交"),
QUAL_FILING_CHANGE_IN_PROGRESS("02-02-102", "存在进行中的备案变更"), QUAL_FILING_CHANGE_IN_PROGRESS("02-02-102", "存在进行中的备案变更"),
QUAL_FILING_COMPLIANCE_CHECK_FAIL("02-02-103", "合规性校验未通过"), QUAL_FILING_COMPLIANCE_CHECK_FAIL("02-02-103", "合规性校验未通过"),
QUAL_FILING_ALREADY_EXISTS("02-01-104", "该机构已存在资质备案记录,不允许重复新增"),
// ---- 用户 ---- // ---- 用户 ----
ACCOUNT_NOT_FOUND("04-01-001", "用户不存在"), ACCOUNT_NOT_FOUND("04-01-001", "用户不存在"),