feat: 添加中介Excel导入导出类

- 新增CcdiIntermediaryPersonExcel,支持个人中介信息导入导出
- 新增CcdiIntermediaryEntityExcel,支持实体中介信息导入导出
- 使用@DictDropdown注解支持字典下拉框
- 完整覆盖个人和实体中介的所有业务字段

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
wkc
2026-02-04 19:31:51 +08:00
parent 36698468f4
commit 4e55105c9e
2 changed files with 219 additions and 0 deletions

View File

@@ -0,0 +1,111 @@
package com.ruoyi.ccdi.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.ruoyi.common.annotation.DictDropdown;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 实体中介Excel导入导出对象
*
* @author ruoyi
* @date 2026-02-04
*/
@Data
public class CcdiIntermediaryEntityExcel implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/** 机构名称 */
@ExcelProperty(value = "机构名称", index = 0)
@ColumnWidth(30)
private String enterpriseName;
/** 统一社会信用代码 */
@ExcelProperty(value = "统一社会信用代码", index = 1)
@ColumnWidth(20)
private String socialCreditCode;
/** 主体类型 */
@ExcelProperty(value = "主体类型", index = 2)
@ColumnWidth(15)
@DictDropdown(dictType = "ccdi_enterprise_type")
private String enterpriseType;
/** 企业性质 */
@ExcelProperty(value = "企业性质", index = 3)
@ColumnWidth(15)
@DictDropdown(dictType = "ccdi_enterprise_nature")
private String enterpriseNature;
/** 行业分类 */
@ExcelProperty(value = "行业分类", index = 4)
@ColumnWidth(15)
private String industryClass;
/** 所属行业 */
@ExcelProperty(value = "所属行业", index = 5)
@ColumnWidth(15)
private String industryName;
/** 成立日期 */
@ExcelProperty(value = "成立日期", index = 6)
@ColumnWidth(15)
private Date establishDate;
/** 注册地址 */
@ExcelProperty(value = "注册地址", index = 7)
@ColumnWidth(40)
private String registerAddress;
/** 法定代表人 */
@ExcelProperty(value = "法定代表人", index = 8)
@ColumnWidth(15)
private String legalRepresentative;
/** 法定代表人证件类型 */
@ExcelProperty(value = "法定代表人证件类型", index = 9)
@ColumnWidth(20)
@DictDropdown(dictType = "ccdi_id_type")
private String legalCertType;
/** 法定代表人证件号码 */
@ExcelProperty(value = "法定代表人证件号码", index = 10)
@ColumnWidth(20)
private String legalCertNo;
/** 股东1 */
@ExcelProperty(value = "股东1", index = 11)
@ColumnWidth(15)
private String shareholder1;
/** 股东2 */
@ExcelProperty(value = "股东2", index = 12)
@ColumnWidth(15)
private String shareholder2;
/** 股东3 */
@ExcelProperty(value = "股东3", index = 13)
@ColumnWidth(15)
private String shareholder3;
/** 股东4 */
@ExcelProperty(value = "股东4", index = 14)
@ColumnWidth(15)
private String shareholder4;
/** 股东5 */
@ExcelProperty(value = "股东5", index = 15)
@ColumnWidth(15)
private String shareholder5;
/** 备注 */
@ExcelProperty(value = "备注", index = 16)
@ColumnWidth(30)
private String remark;
}

View File

@@ -0,0 +1,108 @@
package com.ruoyi.ccdi.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.ruoyi.common.annotation.DictDropdown;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 个人中介Excel导入导出对象
*
* @author ruoyi
* @date 2026-02-04
*/
@Data
public class CcdiIntermediaryPersonExcel implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/** 姓名 */
@ExcelProperty(value = "姓名", index = 0)
@ColumnWidth(15)
private String name;
/** 人员类型 */
@ExcelProperty(value = "人员类型", index = 1)
@ColumnWidth(15)
@DictDropdown(dictType = "ccdi_person_type")
private String personType;
/** 人员子类型 */
@ExcelProperty(value = "人员子类型", index = 2)
@ColumnWidth(15)
@DictDropdown(dictType = "ccdi_person_sub_type")
private String personSubType;
/** 关系类型 */
@ExcelProperty(value = "关系类型", index = 3)
@ColumnWidth(15)
@DictDropdown(dictType = "ccdi_relation_type")
private String relationType;
/** 性别 */
@ExcelProperty(value = "性别", index = 4)
@ColumnWidth(10)
@DictDropdown(dictType = "sys_user_sex")
private String gender;
/** 证件类型 */
@ExcelProperty(value = "证件类型", index = 5)
@ColumnWidth(15)
@DictDropdown(dictType = "ccdi_id_type")
private String idType;
/** 证件号码 */
@ExcelProperty(value = "证件号码", index = 6)
@ColumnWidth(20)
private String personId;
/** 手机号码 */
@ExcelProperty(value = "手机号码", index = 7)
@ColumnWidth(15)
private String mobile;
/** 微信号 */
@ExcelProperty(value = "微信号", index = 8)
@ColumnWidth(15)
private String wechatNo;
/** 联系地址 */
@ExcelProperty(value = "联系地址", index = 9)
@ColumnWidth(30)
private String contactAddress;
/** 所在公司 */
@ExcelProperty(value = "所在公司", index = 10)
@ColumnWidth(20)
private String company;
/** 企业统一信用码 */
@ExcelProperty(value = "企业统一信用码", index = 11)
@ColumnWidth(20)
private String socialCreditCode;
/** 职位 */
@ExcelProperty(value = "职位", index = 12)
@ColumnWidth(15)
private String position;
/** 关联人员ID */
@ExcelProperty(value = "关联人员ID", index = 13)
@ColumnWidth(15)
private String relatedNumId;
/** 关联关系 */
@ExcelProperty(value = "关联关系", index = 14)
@ColumnWidth(15)
@DictDropdown(dictType = "ccdi_relation")
private String relation;
/** 备注 */
@ExcelProperty(value = "备注", index = 15)
@ColumnWidth(30)
private String remark;
}