business scope

dev^2
luotaiqian 2026-07-14 18:51:06 +08:00
parent e1e0175211
commit 132b50a874
7 changed files with 127 additions and 62 deletions

View File

@ -26,7 +26,6 @@ public interface QualFilingChangeCmdConvertor {
* @param qualFilingChangeAddCmd
* @return
*/
@Mapping(target = "businessScope", source = "businessScope", qualifiedByName = "listToJsonString")
QualFilingChangeEntity convertCmdToE(QualFilingChangeAddCmd qualFilingChangeAddCmd);
/**
@ -34,6 +33,7 @@ public interface QualFilingChangeCmdConvertor {
* id 使 changeFilingId
*/
@Mapping(target = "id", source = "filingId")
@Mapping(target = "businessScope", source = "businessScope", qualifiedByName = "listToJsonString")
@Mapping(target = "originFilingId", ignore = true)
@Mapping(target = "rejectReason", ignore = true)
@Mapping(target = "submitTime", ignore = true)
@ -47,7 +47,6 @@ public interface QualFilingChangeCmdConvertor {
* @param changeEntity changeEntity
* @return QualFilingChangeAggregationCO
*/
@Mapping(target = "businessScope", source = "businessScope", qualifiedByName = "jsonStringToList")
QualFilingChangeAggregationCO convertChangeEToQualFilingChangeAggregationCO(QualFilingChangeEntity changeEntity);
@Named("listToJsonString")
@ -55,11 +54,6 @@ public interface QualFilingChangeCmdConvertor {
return list == null ? null : JSON.toJSONString(list);
}
@Named("jsonStringToList")
default List<String> jsonStringToList(String json) {
return json == null || json.isEmpty() ? null : JSON.parseArray(json, String.class);
}
/**
* CmdCmd
*/
@ -71,7 +65,6 @@ public interface QualFilingChangeCmdConvertor {
/**
* Cmd
*/
@Mapping(target = "businessScope", source = "businessScope", qualifiedByName = "jsonStringToList")
@Mapping(target = "filingReviewId", ignore = true)
@Mapping(target = "applyTypeCode", ignore = true)
@Mapping(target = "applyTypeName", ignore = true)

View File

@ -2,7 +2,6 @@ package org.qinan.safetyeval.app.executor;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.alibaba.fastjson.JSON;
import org.qinan.safetyeval.app.change.convertor.*;
import org.qinan.safetyeval.app.orchestrator.QualFilingOrchestrator;
import org.qinan.safetyeval.client.api.QualFilingChangeApi;
@ -101,7 +100,7 @@ public class QualFilingChangeExecutor implements QualFilingChangeApi {
entity.setFilingUnitTypeCode(cmd.getFilingUnitTypeCode());
entity.setFilingUnitTypeName(cmd.getFilingUnitTypeName());
entity.setFilingNo(cmd.getFilingNo());
entity.setBusinessScope(JSON.toJSONString(cmd.getBusinessScope()));
entity.setBusinessScope(cmd.getBusinessScope());
entity.setRegisterAddress(cmd.getRegisterAddress());
entity.setOfficeAddress(cmd.getOfficeAddress());
entity.setCreditCode(cmd.getCreditCode());
@ -139,7 +138,7 @@ public class QualFilingChangeExecutor implements QualFilingChangeApi {
entity.setFilingUnitTypeCode(cmd.getFilingUnitTypeCode());
entity.setFilingUnitTypeName(cmd.getFilingUnitTypeName());
entity.setFilingNo(cmd.getFilingNo());
entity.setBusinessScope(JSON.toJSONString(cmd.getBusinessScope()));
entity.setBusinessScope(cmd.getBusinessScope());
entity.setRegisterAddress(cmd.getRegisterAddress());
entity.setOfficeAddress(cmd.getOfficeAddress());
entity.setCreditCode(cmd.getCreditCode());
@ -683,7 +682,7 @@ public class QualFilingChangeExecutor implements QualFilingChangeApi {
co.setFilingUnitTypeCode(entity.getFilingUnitTypeCode());
co.setFilingUnitTypeName(entity.getFilingUnitTypeName());
co.setFilingNo(entity.getFilingNo());
co.setBusinessScope(JSON.parseArray(entity.getBusinessScope(), String.class));
co.setBusinessScope(entity.getBusinessScope());
co.setRegisterAddress(entity.getRegisterAddress());
co.setOfficeAddress(entity.getOfficeAddress());
co.setCreditCode(entity.getCreditCode());

View File

@ -1,28 +1,27 @@
package org.qinan.safetyeval.app.orchestrator;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.alibaba.fastjson.JSON;
import org.qinan.safetyeval.app.support.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.qinan.safetyeval.app.change.convertor.QualFilingChangeCmdConvertor;
import org.qinan.safetyeval.app.change.convertor.QualFilingCommitmentChangeCmdConvertor;
import org.qinan.safetyeval.app.change.convertor.QualFilingMaterialChangeCmdConvertor;
import org.qinan.safetyeval.app.change.convertor.QualFilingPersonnelChangeCmdConvertor;
import org.qinan.safetyeval.app.convertor.QualFilingCmdConvertor;
import org.qinan.safetyeval.app.support.*;
import org.qinan.safetyeval.client.co.*;
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.QualFilingMaterialAddCmd;
import org.qinan.safetyeval.client.dto.QualFilingModifyCmd;
import org.qinan.safetyeval.client.dto.QualFilingPageQuery;
import org.qinan.safetyeval.client.dto.QualFilingPersonnelAddCmd;
import org.qinan.safetyeval.client.dto.QualificationMonitoringQuery;
import org.qinan.safetyeval.domain.change.gateway.QualFilingCommitmentChangeGateway;
import org.qinan.safetyeval.domain.change.gateway.QualFilingMaterialChangeGateway;
import org.qinan.safetyeval.domain.change.gateway.QualFilingPersonnelChangeGateway;
import org.qinan.safetyeval.domain.change.model.QualFilingCommitmentChangeE;
import org.qinan.safetyeval.domain.constant.*;
import org.qinan.safetyeval.domain.constant.AlertStatusEnum;
import org.qinan.safetyeval.domain.constant.QualFilingApplyTypeEnum;
import org.qinan.safetyeval.domain.constant.QualFilingMaterialUploadStatusEnum;
import org.qinan.safetyeval.domain.constant.QualFilingStatusEnum;
import org.qinan.safetyeval.domain.entity.*;
import org.qinan.safetyeval.domain.exception.BizException;
import org.qinan.safetyeval.domain.exception.ErrorCode;
@ -42,10 +41,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -594,7 +590,7 @@ public class QualFilingOrchestrator {
change.setFilingUnitTypeCode(draft.getFilingUnitTypeCode());
change.setFilingUnitTypeName(draft.getFilingUnitTypeName());
change.setFilingNo(draft.getFilingNo());
change.setBusinessScope(draft.getBusinessScope());
change.setBusinessScope(JSON.parseArray(draft.getBusinessScope(), String.class));
change.setRegisterAddress(draft.getRegisterAddress());
change.setOfficeAddress(draft.getOfficeAddress());
change.setCreditCode(draft.getCreditCode());

View File

@ -3,6 +3,7 @@ package org.qinan.safetyeval.domain.entity;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
*
@ -12,99 +13,163 @@ import java.math.BigDecimal;
@Data
public class QualFilingChangeEntity {
/** 主键ID */
/**
* ID
*/
private Long id;
/** 机构ID */
/**
* ID
*/
private Long orgId;
/** 备案申请ID */
/**
* ID
*/
private Long filingId;
/** 关联变更草稿ID */
/**
* 稿ID
*/
private Long changeFilingId;
/** 打回原因 */
/**
*
*/
private String rejectReason;
/** 审核ID */
/**
* ID
*/
private Long filingReviewId;
/** 提交时间 */
/**
*
*/
private java.time.LocalDateTime submitTime;
/** 备案属地编码 */
/**
*
*/
private String filingTerritoryCode;
/** 备案属地名称 */
/**
*
*/
private String filingTerritoryName;
/** 备案单位 */
/**
*
*/
private String filingUnitName;
/** 备案单位类型编码 */
/**
*
*/
private String filingUnitTypeCode;
/** 备案单位类型名称 */
/**
*
*/
private String filingUnitTypeName;
/** 备案编号 */
/**
*
*/
private String filingNo;
/** 备案安全评价业务范围 */
private String businessScope;
/**
*
*/
private List<String> businessScope;
/** 注册地址 */
/**
*
*/
private String registerAddress;
/** 办公地址 */
/**
*
*/
private String officeAddress;
/** 统一社会信用代码 */
/**
*
*/
private String creditCode;
/** 资质证书编号 */
/**
*
*/
private String qualCertNo;
/** 法人代表及电话 */
/**
*
*/
private String legalPersonPhone;
/** 联系人及电话 */
/**
*
*/
private String contactPhone;
/** 信息公开网址 */
/**
*
*/
private String infoDisclosureUrl;
/** 固定资产总值(单位:分) */
/**
* (:)
*/
private Long fixedAssetAmount;
/** 档案室面积(平方米) */
/**
* ()
*/
private BigDecimal archiveRoomArea;
/** 专职安全评价师数量 */
/**
*
*/
private Integer fulltimeEvaluatorCount;
/** 注册安全工程师数量 */
/**
*
*/
private Integer registeredEngineerCount;
/** 工作场所建筑面积(平方米) */
/**
* ()
*/
private BigDecimal workplaceArea;
/** 单位基本情况介绍 */
/**
*
*/
private String unitIntro;
/** 单位基本情况附件地址 */
/**
*
*/
private String attachmentUrl;
/** 备案状态编码 */
/**
*
*/
private Integer filingStatusCode;
/** 备案状态名称 */
/**
*
*/
private String filingStatusName;
/** 预警状态 normal:正常person_rate:人员比例预警 */
/**
* normal:person_rate:
*/
private String alertStatus;
/** 租户ID */
/**
* ID
*/
private Long tenantId;
}

View File

@ -1,9 +1,14 @@
package org.qinan.safetyeval.infrastructure.convertor;
import com.alibaba.fastjson.JSON;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Named;
import org.qinan.safetyeval.domain.entity.QualFilingChangeEntity;
import org.qinan.safetyeval.infrastructure.dataobject.QualFilingChangeDO;
import java.util.List;
/**
* DO
*
@ -18,5 +23,11 @@ public interface QualFilingChangeDoConvertor {
* @param qualFilingChangeEntity
* @return
*/
@Mapping(target = "businessScope", source = "businessScope", qualifiedByName = "listToJsonString")
QualFilingChangeDO convertEeToDo(QualFilingChangeEntity qualFilingChangeEntity);
@Named("listToJsonString")
default String listToJsonString(List<String> list) {
return list == null ? null : JSON.toJSONString(list);
}
}

View File

@ -1,5 +1,6 @@
package org.qinan.safetyeval.infrastructure.gatewayimpl;
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;
@ -249,7 +250,7 @@ public class QualFilingChangeGatewayImpl implements QualFilingChangeGateway {
dataObject.setFilingUnitTypeCode(entity.getFilingUnitTypeCode());
dataObject.setFilingUnitTypeName(entity.getFilingUnitTypeName());
dataObject.setFilingNo(entity.getFilingNo());
dataObject.setBusinessScope(entity.getBusinessScope());
dataObject.setBusinessScope(JSONUtil.toJsonStr(entity.getBusinessScope()));
dataObject.setRegisterAddress(entity.getRegisterAddress());
dataObject.setOfficeAddress(entity.getOfficeAddress());
dataObject.setCreditCode(entity.getCreditCode());
@ -287,7 +288,7 @@ public class QualFilingChangeGatewayImpl implements QualFilingChangeGateway {
entity.setFilingUnitTypeCode(dataObject.getFilingUnitTypeCode());
entity.setFilingUnitTypeName(dataObject.getFilingUnitTypeName());
entity.setFilingNo(String.valueOf(dataObject.getId()));
entity.setBusinessScope(dataObject.getBusinessScope());
entity.setBusinessScope(JSONUtil.toList(dataObject.getBusinessScope(), String.class));
entity.setRegisterAddress(dataObject.getRegisterAddress());
entity.setOfficeAddress(dataObject.getOfficeAddress());
entity.setCreditCode(dataObject.getCreditCode());

View File

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.qinan.safetyeval.infrastructure.mapper.QualFilingChangeMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="org.qinan.safetyeval.infrastructure.dataobject.QualFilingChangeDO">
<id column="id" property="id"/>
@ -17,7 +16,8 @@
<result column="filing_unit_type_code" property="filingUnitTypeCode"/>
<result column="filing_unit_type_name" property="filingUnitTypeName"/>
<result column="filing_no" property="filingNo"/>
<result column="business_scope" property="businessScope"/>
<result column="business_scope" property="businessScope"
typeHandler="org.qinan.safetyeval.infrastructure.handler.JsonStringListTypeHandler"/>
<result column="register_address" property="registerAddress"/>
<result column="office_address" property="officeAddress"/>
<result column="credit_code" property="creditCode"/>
@ -49,7 +49,8 @@
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
`id`, `org_id`, `filing_id`, `change_filing_id`, `filing_review_id`, `reject_reason`, `submit_time`, `filing_territory_code`, `filing_territory_name`, `filing_unit_name`, `filing_unit_type_code`, `filing_unit_type_name`, `filing_no`, `business_scope`, `register_address`, `office_address`, `credit_code`, `qual_cert_no`, `legal_person_phone`, `contact_phone`, `info_disclosure_url`, `fixed_asset_amount`, `archive_room_area`, `fulltime_evaluator_count`, `registered_engineer_count`, `workplace_area`, `unit_intro`, `attachment_url`, `filing_status_code`, `filing_status_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`
`id`
, `org_id`, `filing_id`, `change_filing_id`, `filing_review_id`, `reject_reason`, `submit_time`, `filing_territory_code`, `filing_territory_name`, `filing_unit_name`, `filing_unit_type_code`, `filing_unit_type_name`, `filing_no`, `business_scope`, `register_address`, `office_address`, `credit_code`, `qual_cert_no`, `legal_person_phone`, `contact_phone`, `info_disclosure_url`, `fixed_asset_amount`, `archive_room_area`, `fulltime_evaluator_count`, `registered_engineer_count`, `workplace_area`, `unit_intro`, `attachment_url`, `filing_status_code`, `filing_status_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`
</sql>
<!-- 机构端分页查询结果映射直接映射为CO无需Entity中转 -->
@ -128,5 +129,4 @@
</foreach>
GROUP BY filing_id
</select>
</mapper>