spring
parent
f20cac68a8
commit
0d9ac4b72d
|
|
@ -1,5 +1,6 @@
|
|||
package org.qinan.safetyeval.app.executor;
|
||||
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
|
|
@ -12,6 +13,7 @@ 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.*;
|
||||
import org.qinan.safetyeval.domain.constant.basic.IndustryEnum;
|
||||
import org.qinan.safetyeval.domain.entity.*;
|
||||
import org.qinan.safetyeval.domain.exception.BizException;
|
||||
import org.qinan.safetyeval.domain.exception.ErrorCode;
|
||||
|
|
@ -689,170 +691,163 @@ public class QualFilingChangeExecutor implements QualFilingChangeApi {
|
|||
private List<QualFilingChangeDetailDO> diffBasicInfo(Long changeId, QualFilingDO exist, QualFilingChangeEntity newEntity) {
|
||||
List<QualFilingChangeDetailDO> details = new ArrayList<>();
|
||||
// 备案属地编码
|
||||
if (!Objects.equals(exist.getFilingTerritoryCode(), newEntity.getFilingTerritoryCode())) {
|
||||
if (!valueEquals(exist.getFilingTerritoryCode(), newEntity.getFilingTerritoryCode())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"备案属地编码",
|
||||
Objects.toString(exist.getFilingTerritoryCode(), ""),
|
||||
Objects.toString(newEntity.getFilingTerritoryCode(), "")));
|
||||
}
|
||||
// 备案属地名称
|
||||
if (!Objects.equals(exist.getFilingTerritoryName(), newEntity.getFilingTerritoryName())) {
|
||||
if (!valueEquals(exist.getFilingTerritoryName(), newEntity.getFilingTerritoryName())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"备案属地名称",
|
||||
Objects.toString(exist.getFilingTerritoryName(), ""),
|
||||
Objects.toString(newEntity.getFilingTerritoryName(), "")));
|
||||
}
|
||||
// 备案单位
|
||||
if (!Objects.equals(exist.getFilingUnitName(), newEntity.getFilingUnitName())) {
|
||||
if (!valueEquals(exist.getFilingUnitName(), newEntity.getFilingUnitName())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"备案单位",
|
||||
Objects.toString(exist.getFilingUnitName(), ""),
|
||||
Objects.toString(newEntity.getFilingUnitName(), "")));
|
||||
}
|
||||
// 备案单位类型编码
|
||||
if (!Objects.equals(exist.getFilingUnitTypeCode(), newEntity.getFilingUnitTypeCode())) {
|
||||
if (!valueEquals(exist.getFilingUnitTypeCode(), newEntity.getFilingUnitTypeCode())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"备案单位类型编码",
|
||||
Objects.toString(exist.getFilingUnitTypeCode(), ""),
|
||||
Objects.toString(newEntity.getFilingUnitTypeCode(), "")));
|
||||
}
|
||||
// 备案单位类型名称
|
||||
if (!Objects.equals(exist.getFilingUnitTypeName(), newEntity.getFilingUnitTypeName())) {
|
||||
if (!valueEquals(exist.getFilingUnitTypeName(), newEntity.getFilingUnitTypeName())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"备案单位类型名称",
|
||||
Objects.toString(exist.getFilingUnitTypeName(), ""),
|
||||
Objects.toString(newEntity.getFilingUnitTypeName(), "")));
|
||||
}
|
||||
// 备案编号
|
||||
if (!Objects.equals(exist.getFilingNo(), newEntity.getFilingNo())) {
|
||||
if (!valueEquals(exist.getFilingNo(), newEntity.getFilingNo())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"备案编号",
|
||||
Objects.toString(exist.getFilingNo(), ""),
|
||||
Objects.toString(newEntity.getFilingNo(), "")));
|
||||
}
|
||||
// 备案安全评价业务范围
|
||||
String existBusinessScope = exist.getBusinessScope();
|
||||
String newBusinessScope = newEntity.getBusinessScope() != null ? String.join(",", newEntity.getBusinessScope()) : "";
|
||||
if (!Objects.equals(existBusinessScope, newBusinessScope)) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"备案安全评价业务范围",
|
||||
Objects.toString(existBusinessScope, ""),
|
||||
newBusinessScope));
|
||||
}
|
||||
diffBusinessScope(changeId, exist.getBusinessScope(), newEntity.getBusinessScope(), details);
|
||||
// 注册地址
|
||||
if (!Objects.equals(exist.getRegisterAddress(), newEntity.getRegisterAddress())) {
|
||||
if (!valueEquals(exist.getRegisterAddress(), newEntity.getRegisterAddress())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"注册地址",
|
||||
Objects.toString(exist.getRegisterAddress(), ""),
|
||||
Objects.toString(newEntity.getRegisterAddress(), "")));
|
||||
}
|
||||
// 办公地址
|
||||
if (!Objects.equals(exist.getOfficeAddress(), newEntity.getOfficeAddress())) {
|
||||
if (!valueEquals(exist.getOfficeAddress(), newEntity.getOfficeAddress())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"办公地址",
|
||||
Objects.toString(exist.getOfficeAddress(), ""),
|
||||
Objects.toString(newEntity.getOfficeAddress(), "")));
|
||||
}
|
||||
// 统一社会信用代码
|
||||
if (!Objects.equals(exist.getCreditCode(), newEntity.getCreditCode())) {
|
||||
if (!valueEquals(exist.getCreditCode(), newEntity.getCreditCode())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"统一社会信用代码",
|
||||
Objects.toString(exist.getCreditCode(), ""),
|
||||
Objects.toString(newEntity.getCreditCode(), "")));
|
||||
}
|
||||
// 资质证书编号
|
||||
if (!Objects.equals(exist.getQualCertNo(), newEntity.getQualCertNo())) {
|
||||
if (!valueEquals(exist.getQualCertNo(), newEntity.getQualCertNo())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"资质证书编号",
|
||||
Objects.toString(exist.getQualCertNo(), ""),
|
||||
Objects.toString(newEntity.getQualCertNo(), "")));
|
||||
}
|
||||
// 法定代表人
|
||||
if (!Objects.equals(exist.getLegalRepresentative(), newEntity.getLegalRepresentative())) {
|
||||
if (!valueEquals(exist.getLegalRepresentative(), newEntity.getLegalRepresentative())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"法定代表人",
|
||||
Objects.toString(exist.getLegalRepresentative(), ""),
|
||||
Objects.toString(newEntity.getLegalRepresentative(), "")));
|
||||
}
|
||||
// 法人代表及电话
|
||||
if (!Objects.equals(exist.getLegalPersonPhone(), newEntity.getLegalPersonPhone())) {
|
||||
if (!valueEquals(exist.getLegalPersonPhone(), newEntity.getLegalPersonPhone())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"法人代表及电话",
|
||||
Objects.toString(exist.getLegalPersonPhone(), ""),
|
||||
Objects.toString(newEntity.getLegalPersonPhone(), "")));
|
||||
}
|
||||
// 联系人
|
||||
if (!Objects.equals(exist.getContactName(), newEntity.getContactName())) {
|
||||
if (!valueEquals(exist.getContactName(), newEntity.getContactName())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"联系人",
|
||||
Objects.toString(exist.getContactName(), ""),
|
||||
Objects.toString(newEntity.getContactName(), "")));
|
||||
}
|
||||
// 联系人及电话
|
||||
if (!Objects.equals(exist.getContactPhone(), newEntity.getContactPhone())) {
|
||||
if (!valueEquals(exist.getContactPhone(), newEntity.getContactPhone())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"联系人及电话",
|
||||
Objects.toString(exist.getContactPhone(), ""),
|
||||
Objects.toString(newEntity.getContactPhone(), "")));
|
||||
}
|
||||
// 传真
|
||||
if (!Objects.equals(exist.getFax(), newEntity.getFax())) {
|
||||
if (!valueEquals(exist.getFax(), newEntity.getFax())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"传真",
|
||||
Objects.toString(exist.getFax(), ""),
|
||||
Objects.toString(newEntity.getFax(), "")));
|
||||
}
|
||||
// 信息公开网址
|
||||
if (!Objects.equals(exist.getInfoDisclosureUrl(), newEntity.getInfoDisclosureUrl())) {
|
||||
if (!valueEquals(exist.getInfoDisclosureUrl(), newEntity.getInfoDisclosureUrl())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"信息公开网址",
|
||||
Objects.toString(exist.getInfoDisclosureUrl(), ""),
|
||||
Objects.toString(newEntity.getInfoDisclosureUrl(), "")));
|
||||
}
|
||||
// 固定资产总值
|
||||
if (!Objects.equals(exist.getFixedAssetAmount(), newEntity.getFixedAssetAmount())) {
|
||||
if (!valueEquals(exist.getFixedAssetAmount(), newEntity.getFixedAssetAmount())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"固定资产总值(单位:分)",
|
||||
Objects.toString(exist.getFixedAssetAmount(), ""),
|
||||
Objects.toString(newEntity.getFixedAssetAmount(), "")));
|
||||
}
|
||||
// 档案室面积(平方米)
|
||||
if (!Objects.equals(exist.getArchiveRoomArea(), newEntity.getArchiveRoomArea())) {
|
||||
if (!valueEquals(exist.getArchiveRoomArea(), newEntity.getArchiveRoomArea())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"档案室面积(平方米)",
|
||||
Objects.toString(exist.getArchiveRoomArea(), ""),
|
||||
Objects.toString(newEntity.getArchiveRoomArea(), "")));
|
||||
}
|
||||
// 专职安全评价师数量(人)
|
||||
if (!Objects.equals(exist.getFulltimeEvaluatorCount(), newEntity.getFulltimeEvaluatorCount())) {
|
||||
if (!valueEquals(exist.getFulltimeEvaluatorCount(), newEntity.getFulltimeEvaluatorCount())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"专职安全评价师数量(人)",
|
||||
Objects.toString(exist.getFulltimeEvaluatorCount(), ""),
|
||||
Objects.toString(newEntity.getFulltimeEvaluatorCount(), "")));
|
||||
}
|
||||
// 注册安全工程师数量(人)
|
||||
if (!Objects.equals(exist.getRegisteredEngineerCount(), newEntity.getRegisteredEngineerCount())) {
|
||||
if (!valueEquals(exist.getRegisteredEngineerCount(), newEntity.getRegisteredEngineerCount())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"注册安全工程师数量(人)",
|
||||
Objects.toString(exist.getRegisteredEngineerCount(), ""),
|
||||
Objects.toString(newEntity.getRegisteredEngineerCount(), "")));
|
||||
}
|
||||
// 工作场所建筑面积(平方米)
|
||||
if (!bigDecimalEquals(exist.getWorkplaceArea(), newEntity.getWorkplaceArea())) {
|
||||
if (!valueEquals(exist.getWorkplaceArea(), newEntity.getWorkplaceArea())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"工作场所建筑面积(平方米)",
|
||||
Objects.toString(exist.getWorkplaceArea(), ""),
|
||||
Objects.toString(newEntity.getWorkplaceArea(), "")));
|
||||
}
|
||||
// 单位基本情况介绍
|
||||
if (!Objects.equals(exist.getUnitIntro(), newEntity.getUnitIntro())) {
|
||||
if (!valueEquals(exist.getUnitIntro(), newEntity.getUnitIntro())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"单位基本情况介绍",
|
||||
Objects.toString(exist.getUnitIntro(), ""),
|
||||
Objects.toString(newEntity.getUnitIntro(), "")));
|
||||
}
|
||||
// 单位基本情况附件地址
|
||||
if (!Objects.equals(exist.getAttachmentUrl(), newEntity.getAttachmentUrl())) {
|
||||
if (!valueEquals(exist.getAttachmentUrl(), newEntity.getAttachmentUrl())) {
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"单位基本情况附件地址",
|
||||
Objects.toString(exist.getAttachmentUrl(), ""),
|
||||
|
|
@ -861,6 +856,44 @@ public class QualFilingChangeExecutor implements QualFilingChangeApi {
|
|||
return details;
|
||||
}
|
||||
|
||||
/**
|
||||
* 备案安全评价业务范围变更明细(转 Set 比较,忽略顺序与重复;编码转换为行业名称展示)
|
||||
*/
|
||||
private void diffBusinessScope(Long changeId, String existScopeJson, List<String> newScope,
|
||||
List<QualFilingChangeDetailDO> details) {
|
||||
Set<String> existScopeSet = toIndustryCodeSet(existScopeJson);
|
||||
Set<String> newScopeSet = newScope == null ? new LinkedHashSet<>() : new LinkedHashSet<>(newScope);
|
||||
if (Objects.equals(existScopeSet, newScopeSet)) {
|
||||
return;
|
||||
}
|
||||
details.add(fieldDetail(changeId, QualFilingFormStepEnum.BASIC_INFO, "备案基本信息变更",
|
||||
"备案安全评价业务范围",
|
||||
toIndustryNames(existScopeSet),
|
||||
toIndustryNames(newScopeSet)));
|
||||
}
|
||||
|
||||
/**
|
||||
* 业务范围 JSON 数组字符串转编码集合
|
||||
*/
|
||||
private Set<String> toIndustryCodeSet(String scopeJson) {
|
||||
if (!StringUtils.hasText(scopeJson)) {
|
||||
return new LinkedHashSet<>();
|
||||
}
|
||||
return new LinkedHashSet<>(JSONUtil.toList(scopeJson, String.class));
|
||||
}
|
||||
|
||||
/**
|
||||
* 行业编码集合转行业名称,多个以逗号分隔(未匹配到枚举时保留原编码)
|
||||
*/
|
||||
private String toIndustryNames(Set<String> codes) {
|
||||
return codes.stream()
|
||||
.map(code -> {
|
||||
String value = IndustryEnum.getValueByCode(code);
|
||||
return value != null ? value : code;
|
||||
})
|
||||
.collect(Collectors.joining(","));
|
||||
}
|
||||
|
||||
private boolean commitmentChanged(QualFilingCommitmentChangeE exist, QualFilingCommitmentChangeE newEntity) {
|
||||
String existSig = exist == null ? "" : exist.getCommitmentContent() + "|" + exist.getLegalRepSignatureUrl()
|
||||
+ "|" + exist.getSignDate() + "|" + exist.getLegalRepPersonnelId() + "|" + exist.getLegalRepName();
|
||||
|
|
|
|||
Loading…
Reference in New Issue