feat: 资质审核通过,通过变更数据

dev
岑溪 2026-07-02 17:12:08 +08:00
parent 6a4a832671
commit fe7a7607c5
3 changed files with 68 additions and 4 deletions

View File

@ -1,19 +1,28 @@
package org.qinan.safetyeval.app.executor;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.qinan.safetyeval.app.orchestrator.QualFilingOrchestrator;
import org.qinan.safetyeval.client.api.QualFilingApi;
import org.qinan.safetyeval.client.change.request.QualFilingCommitmentChangeAddCmd;
import org.qinan.safetyeval.client.change.request.QualFilingEquipmentChangeAddCmd;
import org.qinan.safetyeval.client.change.request.QualFilingMaterialChangeAddCmd;
import org.qinan.safetyeval.client.change.request.QualFilingPersonnelChangeAddCmd;
import org.qinan.safetyeval.client.co.QualFilingCO;
import org.qinan.safetyeval.client.co.QualFilingComplianceCheckResultCO;
import org.qinan.safetyeval.client.co.QualFilingDetailCO;
import org.qinan.safetyeval.client.dto.*;
import org.qinan.safetyeval.domain.constant.QualFilingApplyTypeEnum;
import org.qinan.safetyeval.domain.constant.QualFilingReviewResultEnum;
import org.qinan.safetyeval.domain.entity.*;
import org.qinan.safetyeval.domain.query.PageResult;
import org.qinan.safetyeval.domain.service.QualFilingDomainService;
import org.qinan.safetyeval.infrastructure.dataobject.*;
import org.qinan.safetyeval.infrastructure.mapper.*;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
@ -35,6 +44,22 @@ public class QualFilingExecutor implements QualFilingApi {
@Resource
private QualFilingOrchestrator qualFilingOrchestrator;
@Resource
private QualFilingChangeExecutor qualFilingChangeExecutor;
@Resource
private QualFilingMapper qualFilingMapper;
@Resource
private QualFilingCommitmentMapper qualFilingCommitmentMapper;
@Resource
private QualFilingEquipmentMapper qualFilingEquipmentMapper;
@Resource
private QualFilingMaterialMapper qualFilingMaterialMapper;
@Resource
private QualFilingPersonnelMapper qualFilingPersonnelMapper;
@Resource
private QualFilingPersonnelCertMapper qualFilingPersonnelCertMapper;
@Override
public SingleResponse<QualFilingCO> add(QualFilingAddCmd cmd) {
QualFilingEntity entity = new QualFilingEntity();
@ -179,8 +204,49 @@ public class QualFilingExecutor implements QualFilingApi {
}
@Override
@Transactional(rollbackFor = Exception.class)
public void review(QualFilingReviewAddCmd cmd) {
qualFilingDomainService.review(cmd.getFilingId(), cmd.getReviewResult(), cmd.getReviewResultRemark(), cmd.getFilingExpertId(), cmd.getFilingExpertName(), cmd.getReviewOpinion());
if (QualFilingReviewResultEnum.PASS.getCode() == Integer.parseInt(cmd.getReviewResult())) {
// 审核通过,需要新增资质变更记录
AggregationSaveOrEditQualFilingChangeCmd cmdSync = new AggregationSaveOrEditQualFilingChangeCmd();
// 基本信息
QualFilingDO qualFilingDO = qualFilingMapper.selectById(cmd.getFilingId());
QualFilingChangeAddCmd qualFilingChangeAddCmd = new QualFilingChangeAddCmd();
BeanUtils.copyProperties(qualFilingDO, qualFilingChangeAddCmd, "id");
cmdSync.setQualFilingChangeAddCmd(qualFilingChangeAddCmd);
// 备案承诺书
QualFilingCommitmentDO qualFilingCommitmentDO = qualFilingCommitmentMapper.selectOne(new LambdaQueryWrapper<QualFilingCommitmentDO>()
.eq(QualFilingCommitmentDO::getFilingId, cmd.getFilingId()));
QualFilingCommitmentChangeAddCmd qualFilingCommitmentChangeAddCmd = new QualFilingCommitmentChangeAddCmd();
BeanUtils.copyProperties(qualFilingCommitmentDO, qualFilingCommitmentChangeAddCmd);
cmdSync.setQualFilingCommitmentChangeAddCmd(qualFilingCommitmentChangeAddCmd);
// 备案装备
List<QualFilingEquipmentDO> qualFilingEquipmentDOs = qualFilingEquipmentMapper.selectList(new LambdaQueryWrapper<QualFilingEquipmentDO>()
.eq(QualFilingEquipmentDO::getFilingId, cmd.getFilingId()));
cmdSync.setQualFilingEquipmentChangeAddCmds(qualFilingEquipmentDOs.stream().map(item -> {
QualFilingEquipmentChangeAddCmd qualFilingEquipmentChangeAddCmd = new QualFilingEquipmentChangeAddCmd();
BeanUtils.copyProperties(item, qualFilingEquipmentChangeAddCmd);
return qualFilingEquipmentChangeAddCmd;
}).collect(Collectors.toList()));
// 备案材料清单
List<QualFilingMaterialDO> qualFilingMaterialDOs = qualFilingMaterialMapper.selectList(new LambdaQueryWrapper<QualFilingMaterialDO>()
.eq(QualFilingMaterialDO::getFilingId, cmd.getFilingId()));
cmdSync.setQualFilingMaterialChangeAddCmds(qualFilingMaterialDOs.stream().map(item -> {
QualFilingMaterialChangeAddCmd qualFilingMaterialChangeAddCmd = new QualFilingMaterialChangeAddCmd();
BeanUtils.copyProperties(item, qualFilingMaterialChangeAddCmd);
return qualFilingMaterialChangeAddCmd;
}).collect(Collectors.toList()));
// 备案人员
List<QualFilingPersonnelDO> qualFilingPersonnelDOs = qualFilingPersonnelMapper.selectList(new LambdaQueryWrapper<QualFilingPersonnelDO>()
.eq(QualFilingPersonnelDO::getFilingId, cmd.getFilingId()));
cmdSync.setQualFilingPersonnelChangeAddCmds(qualFilingPersonnelDOs.stream().map(item -> {
QualFilingPersonnelChangeAddCmd qualFilingPersonnelChangeAddCmd = new QualFilingPersonnelChangeAddCmd();
BeanUtils.copyProperties(item, qualFilingPersonnelChangeAddCmd);
return qualFilingPersonnelChangeAddCmd;
}).collect(Collectors.toList()));
qualFilingChangeExecutor.aggregationSaveOrEdit(cmdSync);
}
}
private QualFilingCO toLegacyCO(QualFilingEntity entity) {

View File

@ -200,7 +200,7 @@ public class QualFilingChangeGatewayImpl implements QualFilingChangeGateway {
.stream().map(QualFilingPersonnelChangeE::getSourcePersonnelId).collect(Collectors.toList());
if (!CollectionUtils.isEmpty(sourcePersonnelIds)) {
List<OrgPersonnelCertDO> orgPersonnelCertDOS = orgPersonnelCertMapper.selectList(new LambdaQueryWrapper<OrgPersonnelCertDO>()
.eq(OrgPersonnelCertDO::getPersonnelId, sourcePersonnelIds));
.in(OrgPersonnelCertDO::getPersonnelId, sourcePersonnelIds));
if (!CollectionUtils.isEmpty(orgPersonnelCertDOS)) {
for (OrgPersonnelCertDO orgPersonnelCertDO : orgPersonnelCertDOS) {
QualFilingPersonnelCertChangeDO qualFilingPersonnelCertChangeDO =

View File

@ -200,7 +200,7 @@ public class QualFilingGatewayImpl implements QualFilingGateway {
List<Long> sourcePersonnelIds = personnelEntities.stream().map(QualFilingPersonnelEntity::getSourcePersonnelId).collect(Collectors.toList());
if (!CollectionUtils.isEmpty(sourcePersonnelIds)) {
List<OrgPersonnelCertDO> orgPersonnelCertDOS = orgPersonnelCertMapper.selectList(new LambdaQueryWrapper<OrgPersonnelCertDO>()
.eq(OrgPersonnelCertDO::getPersonnelId, sourcePersonnelIds));
.in(OrgPersonnelCertDO::getPersonnelId, sourcePersonnelIds));
if (!CollectionUtils.isEmpty(orgPersonnelCertDOS)) {
for (OrgPersonnelCertDO orgPersonnelCertDO : orgPersonnelCertDOS) {
QualFilingPersonnelCertDO qualFilingPersonnelCertDO = new QualFilingPersonnelCertDO();
@ -236,7 +236,6 @@ public class QualFilingGatewayImpl implements QualFilingGateway {
* @param reviewOpinion
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void review(Long filingId, String reviewResult, String reviewResultRemark, Long filingExpertId, String filingExpertName, String reviewOpinion) {
// 保存审核记录
QualFilingReviewDO qualFilingReviewDO = new QualFilingReviewDO();
@ -258,7 +257,6 @@ public class QualFilingGatewayImpl implements QualFilingGateway {
filing.setFilingReviewId(qualFilingReviewDO.getId());
InsertFieldDefaults.applyForUpdate(filing);
qualFilingMapper.updateById(filing);
//todo 审核通过是否需要新增资质变更记录
}
/**