dev
luotaiqian 2026-07-31 11:02:20 +08:00
parent 59d6b68036
commit 3feb9f9d43
3 changed files with 83 additions and 11 deletions

View File

@ -0,0 +1,75 @@
package org.qinan.safetyeval.app.change.convertor;
import com.alibaba.fastjson.JSON;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Named;
import org.qinan.safetyeval.client.dto.AggregationSaveOrEditQualFilingCmd;
import org.qinan.safetyeval.client.dto.QualFilingAddCmd;
import org.qinan.safetyeval.client.dto.QualFilingCommitmentAddCmd;
import org.qinan.safetyeval.client.dto.QualFilingEquipmentAddCmd;
import org.qinan.safetyeval.client.dto.QualFilingMaterialAddCmd;
import org.qinan.safetyeval.client.dto.QualFilingPersonnelAddCmd;
import org.qinan.safetyeval.infrastructure.dataobject.QualFilingCommitmentDO;
import org.qinan.safetyeval.infrastructure.dataobject.QualFilingDO;
import org.qinan.safetyeval.infrastructure.dataobject.QualFilingEquipmentDO;
import org.qinan.safetyeval.infrastructure.dataobject.QualFilingMaterialDO;
import org.qinan.safetyeval.infrastructure.dataobject.QualFilingPersonnelDO;
import java.util.List;
/**
* Cmd
* DO {@link AggregationSaveOrEditQualFilingCmd}
*
* @author safety-eval
*/
@Mapper(componentModel = "spring")
public interface QualFilingComplianceCmdConvertor {
/**
* DOCmd
*/
@Mapping(target = "qualFilingAddCmd", source = "qualFilingDO")
@Mapping(target = "qualFilingCommitmentAddCmd", source = "qualFilingCommitmentDO")
@Mapping(target = "qualFilingEquipmentAddCmds", source = "qualFilingEquipmentDOs")
@Mapping(target = "qualFilingMaterialAddCmds", source = "qualFilingMaterialDOs")
@Mapping(target = "qualFilingPersonnelAddCmds", source = "qualFilingPersonnelDOs")
@Mapping(target = "qualFilingPersonnelCertAddCmds", ignore = true)
AggregationSaveOrEditQualFilingCmd convertToCmd(QualFilingDO qualFilingDO,
QualFilingCommitmentDO qualFilingCommitmentDO,
List<QualFilingEquipmentDO> qualFilingEquipmentDOs,
List<QualFilingMaterialDO> qualFilingMaterialDOs,
List<QualFilingPersonnelDO> qualFilingPersonnelDOs);
/**
* DOCmdbusinessScope JSON List
*/
@Mapping(target = "businessScope", source = "businessScope", qualifiedByName = "jsonStringToList")
QualFilingAddCmd convertFilingDOToCmd(QualFilingDO qualFilingDO);
/**
* DOCmd
*/
QualFilingCommitmentAddCmd convertCommitmentDOToCmd(QualFilingCommitmentDO qualFilingCommitmentDO);
/**
* DOCmd
*/
QualFilingEquipmentAddCmd convertEquipmentDOToCmd(QualFilingEquipmentDO qualFilingEquipmentDO);
/**
* DOCmd
*/
QualFilingMaterialAddCmd convertMaterialDOToCmd(QualFilingMaterialDO qualFilingMaterialDO);
/**
* DOCmd
*/
QualFilingPersonnelAddCmd convertPersonnelDOToCmd(QualFilingPersonnelDO qualFilingPersonnelDO);
@Named("jsonStringToList")
default List<String> jsonStringToList(String json) {
return json == null ? null : JSON.parseArray(json, String.class);
}
}

View File

@ -73,6 +73,8 @@ public class QualFilingExecutor implements QualFilingApi {
private QualFilingMaterialChangeCmdConvertor qualFilingMaterialChangeCmdConvertor; private QualFilingMaterialChangeCmdConvertor qualFilingMaterialChangeCmdConvertor;
@Resource @Resource
private QualFilingPersonnelChangeCmdConvertor qualFilingPersonnelChangeCmdConvertor; private QualFilingPersonnelChangeCmdConvertor qualFilingPersonnelChangeCmdConvertor;
@Resource
private QualFilingComplianceCmdConvertor qualFilingComplianceCmdConvertor;
@Override @Override
public SingleResponse<QualFilingCO> add(QualFilingAddCmd cmd) { public SingleResponse<QualFilingCO> add(QualFilingAddCmd cmd) {
@ -289,28 +291,23 @@ public class QualFilingExecutor implements QualFilingApi {
@Override @Override
public SingleResponse<List<QualFilingComplianceCheckResultCO>> checkItem(Long filingId) { public SingleResponse<List<QualFilingComplianceCheckResultCO>> checkItem(Long filingId) {
QualFilingDO qualFilingDO = qualFilingMapper.selectById(filingId); QualFilingDO qualFilingDO = qualFilingMapper.selectById(filingId);
// 审核通过,需要新增资质变更记录
AggregationSaveOrEditQualFilingCmd cmdSync = new AggregationSaveOrEditQualFilingCmd();
cmdSync.setQualFilingAddCmd(qualFilingChangeCmdConvertor.convertDOToCmd(qualFilingDO));
// 备案承诺书 // 备案承诺书
QualFilingCommitmentDO qualFilingCommitmentDO = qualFilingCommitmentMapper.selectOne(new LambdaQueryWrapper<QualFilingCommitmentDO>() QualFilingCommitmentDO qualFilingCommitmentDO = qualFilingCommitmentMapper.selectOne(new LambdaQueryWrapper<QualFilingCommitmentDO>()
.eq(QualFilingCommitmentDO::getFilingId, filingId)); .eq(QualFilingCommitmentDO::getFilingId, filingId));
cmdSync.setQualFilingCommitmentAddCmd(qualFilingCommitmentChangeCmdConvertor.convertDOToCmd(qualFilingCommitmentDO));
// 备案装备 // 备案装备
List<QualFilingEquipmentDO> qualFilingEquipmentDOs = qualFilingEquipmentMapper.selectList(new LambdaQueryWrapper<QualFilingEquipmentDO>() List<QualFilingEquipmentDO> qualFilingEquipmentDOs = qualFilingEquipmentMapper.selectList(new LambdaQueryWrapper<QualFilingEquipmentDO>()
.eq(QualFilingEquipmentDO::getFilingId, filingId)); .eq(QualFilingEquipmentDO::getFilingId, filingId));
cmdSync.setQualFilingEquipmentAddCmds(qualFilingEquipmentChangeCmdConvertor.convertDOListToCmdList(qualFilingEquipmentDOs));
// 备案材料清单 // 备案材料清单
List<QualFilingMaterialDO> qualFilingMaterialDOs = qualFilingMaterialMapper.selectList(new LambdaQueryWrapper<QualFilingMaterialDO>() List<QualFilingMaterialDO> qualFilingMaterialDOs = qualFilingMaterialMapper.selectList(new LambdaQueryWrapper<QualFilingMaterialDO>()
.eq(QualFilingMaterialDO::getFilingId, filingId)); .eq(QualFilingMaterialDO::getFilingId, filingId));
cmdSync.setQualFilingMaterialAddCmds(qualFilingMaterialChangeCmdConvertor.convertDOListToCmdList(qualFilingMaterialDOs));
// 备案人员 // 备案人员
List<QualFilingPersonnelDO> qualFilingPersonnelDOs = qualFilingPersonnelMapper.selectList(new LambdaQueryWrapper<QualFilingPersonnelDO>() List<QualFilingPersonnelDO> qualFilingPersonnelDOs = qualFilingPersonnelMapper.selectList(new LambdaQueryWrapper<QualFilingPersonnelDO>()
.eq(QualFilingPersonnelDO::getFilingId, filingId)); .eq(QualFilingPersonnelDO::getFilingId, filingId));
cmdSync.setQualFilingPersonnelAddCmds(qualFilingPersonnelChangeCmdConvertor.convertDOListToCmdList(qualFilingPersonnelDOs));
return SingleResponse.success(ComplianceCheckUtil.complianceCheck(cmdSync,false)); // 聚合转换为合规性校验Cmd
AggregationSaveOrEditQualFilingCmd cmdSync = qualFilingComplianceCmdConvertor.convertToCmd(
qualFilingDO, qualFilingCommitmentDO, qualFilingEquipmentDOs, qualFilingMaterialDOs, qualFilingPersonnelDOs);
return SingleResponse.success(ComplianceCheckUtil.complianceCheck(cmdSync, false));
} }
private QualFilingCO toLegacyCO(QualFilingEntity entity) { private QualFilingCO toLegacyCO(QualFilingEntity entity) {