Merge remote-tracking branch 'origin/dev' into dev

dev
huwei 2026-07-08 20:44:37 +08:00
commit 33d8b1de22
20 changed files with 74 additions and 9 deletions

View File

@ -27,7 +27,7 @@ public interface QualFilingChangeCmdConvertor {
*
* id 使 changeFilingId
*/
@Mapping(target = "id", ignore = true)
@Mapping(target = "id", source = "filingId")
@Mapping(target = "originFilingId", ignore = true)
@Mapping(target = "rejectReason", ignore = true)
@Mapping(target = "submitTime", ignore = true)

View File

@ -9,6 +9,7 @@ import org.qinan.safetyeval.client.co.*;
import org.qinan.safetyeval.client.dto.*;
import org.qinan.safetyeval.domain.change.gateway.*;
import org.qinan.safetyeval.domain.change.model.*;
import org.qinan.safetyeval.domain.constant.QualFilingComplianceCheckEnum;
import org.qinan.safetyeval.domain.constant.QualFilingFormStepEnum;
import org.qinan.safetyeval.domain.constant.QualFilingReviewResultEnum;
import org.qinan.safetyeval.domain.constant.QualFilingStatusEnum;
@ -238,10 +239,10 @@ public class QualFilingChangeExecutor implements QualFilingChangeApi {
return SingleResponse.success();
}
@Override
public SingleResponse<List<QualFilingChangeComplianceCheckResultCO>> complianceCheck(Long id) {
return SingleResponse.success(qualFilingOrchestrator.complianceCheckChange(id));
}
@Override
public SingleResponse<List<QualFilingChangeComplianceCheckResultCO>> complianceCheck(Long id) {
return SingleResponse.success(qualFilingOrchestrator.complianceCheckChange(id));
}
@Override
@Transactional(rollbackFor = Exception.class)
@ -301,6 +302,17 @@ public class QualFilingChangeExecutor implements QualFilingChangeApi {
Long id = qualFilingChangeDomainService.aggregationSaveOrEdit(entity, commitmentEntity
, equipmentEntities, materialEntities, personnelEntities, personnelCertEntities);
// 合规性校验:只要有一项未通过则抛出异常
List<QualFilingChangeComplianceCheckResultCO> complianceResults = qualFilingOrchestrator.complianceCheckChange(id);
List<String> failedItems = complianceResults.stream()
.filter(r -> QualFilingComplianceCheckEnum.STATUS_FAIL.equals(r.getStatus()))
.map(QualFilingChangeComplianceCheckResultCO::getTitle)
.collect(Collectors.toList());
if (!failedItems.isEmpty()) {
throw new BizException(ErrorCode.QUAL_FILING_COMPLIANCE_CHECK_FAIL,
"合规性校验未通过:" + String.join("、", failedItems));
}
QualFilingChangeCO co = new QualFilingChangeCO();
co.setId(id);
return SingleResponse.success(co);
@ -344,7 +356,7 @@ public class QualFilingChangeExecutor implements QualFilingChangeApi {
// 转换变更基本信息 → 备案实体
QualFilingEntity entity = qualFilingChangeCmdConvertor.convertChangeEToEntity(changeEntity);
entity.setId(changeEntity.getChangeFilingId());
entity.setFilingStatusCode(QualFilingStatusEnum.FILED.getCode());
// 查询并转换承诺书
QualFilingCommitmentChangeE commitmentChangeE = qualFilingCommitmentChangeGateway.getByFilingId(changeFilingId);

View File

@ -38,6 +38,7 @@ public class QualFilingMaterialExecutor implements QualFilingMaterialApi {
entity.setMaterialFormat(cmd.getMaterialFormat());
entity.setAttachmentUrl(cmd.getAttachmentUrl());
entity.setMaterialRemark(cmd.getMaterialRemark());
entity.setHasSatisfy(cmd.getHasSatisfy());
QualFilingMaterialEntity result = qualFilingMaterialDomainService.add(entity);
return SingleResponse.success(toCO(result));
@ -57,6 +58,7 @@ public class QualFilingMaterialExecutor implements QualFilingMaterialApi {
entity.setMaterialFormat(cmd.getMaterialFormat());
entity.setAttachmentUrl(cmd.getAttachmentUrl());
entity.setMaterialRemark(cmd.getMaterialRemark());
entity.setHasSatisfy(cmd.getHasSatisfy());
QualFilingMaterialEntity result = qualFilingMaterialDomainService.modify(entity);
return SingleResponse.success(toCO(result));
@ -116,6 +118,7 @@ public class QualFilingMaterialExecutor implements QualFilingMaterialApi {
co.setAttachmentDesc(entity.getAttachmentDesc());
co.setAttachmentUrl(entity.getAttachmentUrl());
co.setMaterialRemark(entity.getMaterialRemark());
co.setHasSatisfy(entity.getHasSatisfy());
co.setTenantId(entity.getTenantId());
return co;
}

View File

@ -726,6 +726,7 @@ public class QualFilingOrchestrator {
co.setAttachmentUrl(entity.getAttachmentUrl());
co.setMaterialType(entity.getMaterialType());
co.setMaterialRemark(entity.getMaterialRemark());
co.setHasSatisfy(entity.getHasSatisfy());
co.setTenantId(entity.getTenantId());
return co;
}

View File

@ -75,6 +75,11 @@ public class QualFilingMaterialChangeAddCmd implements Serializable {
*/
@ApiModelProperty(value = "注释")
private String materialRemark;
/**
* (12)
*/
@ApiModelProperty(value = "是否符合(1符合2不符合)")
private Long hasSatisfy;
/**
*
*/

View File

@ -69,6 +69,11 @@ public class QualFilingMaterialChangePageQry extends PageQuery {
*/
@ApiModelProperty(value = "注释")
private String materialRemark;
/**
* (12)
*/
@ApiModelProperty(value = "是否符合(1符合2不符合)")
private Long hasSatisfy;
/**
*
*/

View File

@ -77,6 +77,11 @@ public class QualFilingMaterialChangeUpdateCmd implements Serializable {
*/
@ApiModelProperty(value = "注释")
private String materialRemark;
/**
* (12)
*/
@ApiModelProperty(value = "是否符合(1符合2不符合)")
private Long hasSatisfy;
/**
*
*/

View File

@ -71,6 +71,11 @@ public class QualFilingMaterialChangeCo extends ClientObject {
*/
@ApiModelProperty(value = "注释")
private String materialRemark;
/**
* (12)
*/
@ApiModelProperty(value = "是否符合(1符合2不符合)")
private Long hasSatisfy;
/**
*
*/

View File

@ -47,6 +47,9 @@ public class QualFilingMaterialCO {
@ApiModelProperty(value = "材料备注")
private String materialRemark;
@ApiModelProperty(value = "是否符合(1符合2不符合)")
private Integer hasSatisfy;
@ApiModelProperty(value = "租户ID")
private Long tenantId;
}

View File

@ -40,4 +40,7 @@ public class QualFilingMaterialAddCmd {
@ApiModelProperty(value = "附件描述")
private String attachmentDesc;
@ApiModelProperty(value = "是否符合(1符合2不符合)")
private Integer hasSatisfy;
}

View File

@ -31,4 +31,7 @@ public class QualFilingMaterialModifyCmd {
@ApiModelProperty(value = "租户id")
private Long tenantId;
@ApiModelProperty(value = "是否符合(1符合2不符合)")
private Integer hasSatisfy;
}

View File

@ -64,6 +64,10 @@ public class QualFilingMaterialChangeE extends BaseE {
*
*/
private String materialRemark;
/**
* (12)
*/
private Long hasSatisfy;
/**
*
*/

View File

@ -47,6 +47,9 @@ public class QualFilingMaterialEntity {
/** 注释 */
private String materialRemark;
/** 是否符合(1符合2不符合) */
private Integer hasSatisfy;
/** 租户ID */
private Long tenantId;

View File

@ -74,6 +74,7 @@ public enum ErrorCode {
QUAL_FILING_EQUIPMENT_DUPLICATE("02-05-101", "备案装备已存在,请勿重复添加"),
QUAL_FILING_CHANGE_NO_DIFF("02-02-101", "备案信息无变更,无需提交"),
QUAL_FILING_CHANGE_IN_PROGRESS("02-02-102", "存在进行中的备案变更"),
QUAL_FILING_COMPLIANCE_CHECK_FAIL("02-02-103", "合规性校验未通过"),
// ---- 用户 ----
ACCOUNT_NOT_FOUND("04-01-001", "用户不存在"),

View File

@ -26,6 +26,8 @@ public class QualFilingMaterialDO {
private String attachmentDesc;
private String attachmentUrl;
private String materialRemark;
/** 是否符合(1符合2不符合) */
private Integer hasSatisfy;
// ---- GBS默认字段 ----
private String deleteEnum;

View File

@ -110,6 +110,7 @@ public class QualFilingMaterialGatewayImpl implements QualFilingMaterialGateway
dataObject.setAttachmentUrl(entity.getAttachmentUrl());
dataObject.setMaterialRemark(entity.getMaterialRemark());
dataObject.setMaterialType(entity.getMaterialType());
dataObject.setHasSatisfy(entity.getHasSatisfy());
dataObject.setTenantId(entity.getTenantId());
return dataObject;
}
@ -131,6 +132,7 @@ public class QualFilingMaterialGatewayImpl implements QualFilingMaterialGateway
entity.setAttachmentUrl(dataObject.getAttachmentUrl());
entity.setMaterialRemark(dataObject.getMaterialRemark());
entity.setMaterialType(dataObject.getMaterialType());
entity.setHasSatisfy(dataObject.getHasSatisfy());
entity.setTenantId(dataObject.getTenantId());
return entity;
}

View File

@ -62,6 +62,10 @@ public class QualFilingMaterialChangeDO extends BaseDO {
*
*/
private String materialRemark;
/**
* (12)
*/
private Long hasSatisfy;
/**
*
*/

View File

@ -18,6 +18,7 @@
<result property="attachmentDesc" column="attachment_desc"/>
<result property="attachmentUrl" column="attachment_url"/>
<result property="materialRemark" column="material_remark"/>
<result property="hasSatisfy" column="has_satisfy"/>
<result property="deleteEnum" column="delete_enum"/>
<result property="remarks" column="remarks"/>
<result property="createName" column="create_name"/>
@ -45,6 +46,7 @@
attachment_desc,
attachment_url,
material_remark,
has_satisfy,
delete_enum,
remarks,
create_name,

View File

@ -16,6 +16,7 @@
<result column="attachment_desc" property="attachmentDesc"/>
<result column="attachment_url" property="attachmentUrl"/>
<result column="material_remark" property="materialRemark"/>
<result column="has_satisfy" property="hasSatisfy"/>
<result column="delete_enum" property="deleteEnum"/>
<result column="remarks" property="remarks"/>
<result column="create_name" property="createName"/>
@ -32,7 +33,7 @@
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
`id`, `filing_id`, `material_type`, `material_content`, `material_format`, `sort_order`, `required_flag`, `upload_status_code`, `upload_status_name`, `attachment_desc`, `attachment_url`, `material_remark`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `org_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`
`id`, `filing_id`, `material_type`, `material_content`, `material_format`, `sort_order`, `required_flag`, `upload_status_code`, `upload_status_name`, `attachment_desc`, `attachment_url`, `material_remark`, `has_satisfy`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `org_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`
</sql>
</mapper>

View File

@ -5,7 +5,8 @@
banner: false
db-config:
id-type: assign_id
logic-delete-value: 1
logic-not-delete-value: 0
logic-delete-field: deleteEnum
logic-delete-value: "true"
logic-not-delete-value: "false"
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl