package com.ruoyi.ibs.custmap.domain.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;

import java.math.BigDecimal;

/**
 * @Author 吴凯程
 * @Date 2025/5/15
 **/
@Data
public class CustMapExcelVO {

    /**
     * id
     */
//    @Excel(name = "id")
    @ExcelProperty("id")
    private Integer id;

    /**
     * 企业规模 | en_qly
     */
    @ExcelProperty("企业规模")
    private String custScale;

    /**
     * 企业名称 | cust_nam
     */
    @ExcelProperty("企业名称")
    private String custName;

    /**
     * 公司类型
     */
    @ExcelProperty("机构类型")
    private String companyType;

    /**
     * 法人姓名
     */
    @ExcelProperty("法人姓名")
    private String lpName;

    /**
     * 法人电话
     */
    @ExcelProperty("法人电话")
    private String custPhone;

    /**
     * 客户号 | cust_id
     */
    @ExcelProperty("客户号")
    private String custId;

    /**
     * 客户内码 | cst_id
     */
    @ExcelProperty("客户内码")
    private String custIsn;

    /**
     * 统一社会信用识别码 | uniscid
     */
    @ExcelProperty("统一社会信用识别码")
    private String socialCreditCode;

    /**
     * 省
     */
    @ExcelProperty("省")
    private String province;

    /**
     * 市
     */
    @ExcelProperty("市")
    private String city;

    /**
     * 县
     */
    @ExcelProperty("县")
    private String county;

    /**
     * 街道/镇
     */
    @ExcelProperty("街道/镇")
    private String street;

    /**
     * 社区/村
     */
    @ExcelProperty("社区/村")
    private String community;

    /**
     * 详细地址
     */
    @ExcelProperty("详细地址")
    private String addressDetail;

    /**
     * 经度
     */
    @ExcelProperty("经度")
    private BigDecimal longitude;

    /**
     * 纬度
     */
    @ExcelProperty("纬度")
    private BigDecimal latitude;

    /**
     * 所在行业
     */
    @ExcelProperty("所在行业")
    private String belongBusiness;

    /**
     * 成立年限
     */
    @ExcelProperty("成立年限")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private String startDate;

    /**
     * 经营状态
     */
    @ExcelProperty("经营状态")
    private String status;

    /**
     * 注册资本币种
     */
    @ExcelProperty("注册资本币种")
    private String registCapiCur;

    /**
     * 注册资本数值
     */
    @ExcelProperty("注册资本数值")
    private Double registCapiValue;

    /**
     * 注册资本单位
     */
    @ExcelProperty("注册资本展示")
    private String registCapiShow;

    /**
     * 实缴资本币种
     */
    @ExcelProperty("实缴资本币种")
    private String recCapCur;

    /**
     * 实缴资本数值
     */
    @ExcelProperty("实缴资本数值")
    private Double recCapValue;

    /**
     * 实缴资本单位
     */
    @ExcelProperty("实缴资本展示")
    private String recCapShow;

    /**
     * 联系方式
     */
    @ExcelProperty("联系方式")
    private String phoneNumber;

    /**
     * 经营信息-养老保险参保人数
     */
    @ExcelProperty("经营信息-养老保险参保人数")
    private String businessInfoPenInsurNum;

    /**
     * 经营信息-医疗保险参保人数
     */
    @ExcelProperty("经营信息-医疗保险参保人数")
    private String businessInfoMediInsurNum;

    /**
     * 经营信息-有无进出口信息（1为有，0为无）
     */
    @ExcelProperty("经营信息-有无进出口信息")
    private Boolean businessInfoImExportFlag;

    @ExcelProperty("经营信息-进出口信息信用等级")
    private String businessInfoImExportCreditGrade;


    /**
     * 经营信息-有无政府扶持和奖励（1为有，0为无）
     */
    @ExcelProperty("经营信息-有无政府扶持和奖励")
    private Boolean businessInfoGovSupportFlag;

    /**
     * 经营信息-有无融资信息（1为有，0为无）
     */
    @ExcelProperty("经营信息-有无融资信息")
    private Boolean businessInfoFinaInfoFlag;

    /**
     * 经营信息-融资轮次
     */
    @ExcelProperty("经营信息-融资轮次")
    private String businessInfoFinaRound;

    /**
     * 知识产权-有无商标信息（1为有，0为无）
     */
    @ExcelProperty("知识产权-有无商标信息")
    private Boolean intelPropRightTrademarkInfoFlag;

    /**
     * 知识产权-有无专利信息（1为有，0为无）
     */
    @ExcelProperty("知识产权-有无专利信息")
    private Boolean intelPropRightPatentInfoFlag;

    /**
     * 知识产权-有无软件著作权（1为有，0为无）
     */
    @ExcelProperty("知识产权-有无软件著作权")
    private Boolean intelPropRightSoftCopyrightFlag;

    /**
     * 科技等级-类型
     */
    @ExcelProperty("科技等级-类型")
    private String technologyLvlType;

    /**
     * 科技等级-状态
     */
    @ExcelProperty("科技等级-状态")
    private String technologyLvlState;

    /**
     * 科技等级-级别
     */
    @ExcelProperty("科技等级-级别")
    private String technologyLvlLevel;

    /**
     * 资本市场-有无上市信息（1为有，0为无）
     */
    @ExcelProperty("资本市场-有无上市信息")
    private Boolean capMarketListInfoFlag;

    /**
     * 风险特征-有无失信信息（1为有，0为无）
     */
    @ExcelProperty("风险特征-有无失信信息")
    private Boolean riskCharDisInfoFlag;

    /**
     * 风险特征-有无破产清算（1为有，0为无）
     */
    @ExcelProperty("风险特征-有无破产清算")
    private Boolean riskCharBankruptcyLiquiFlag;

    /**
     * 风险特征-有无变更记录（1为有，0为无）
     */
    @ExcelProperty("风险特征-有无变更记录")
    private Boolean riskCharChangeRecordFlag;

    /**
     * 风险特征-有无失信被执行人（1为有，0为无）
     */
    @ExcelProperty("风险特征-有无失信被执行人")
    private Boolean riskCharDisPersonFlag;

    /**
     * 风险特征-有无严重失信违法（1为有，0为无）
     */
    @ExcelProperty("风险特征-有无严重失信违法")
    private Boolean riskCharSncFlag;

    /**
     * 风险特征-有无限制高消费（1为有，0为无）
     */
    @ExcelProperty("风险特征-有无限制高消费")
    private Boolean riskCharRhcFlag;

    /**
     * 经营风险-有无行政处罚（1为有，0为无）
     */
    @ExcelProperty("经营风险-有无行政处罚")
    private Boolean operatRiskAdminPenaltyFlag;

    /**
     * 经营风险-有无环保处罚（1为有，0为无）
     */
    @ExcelProperty("经营风险-有无环保处罚")
    private Boolean operatRiskEnvirPenaltyFlag;

    /**
     * 经营风险-有无欠税信息（1为有，0为无）
     */
    @ExcelProperty("经营风险-有无欠税信息")
    private Boolean operatRiskOweTaxInfoFlag;

    /**
     * 经营风险-有无终末案件（1为有，0为无）
     */
    @ExcelProperty("经营风险-有无终末案件")
    private Boolean operatRiskFinalCaseFlag;

    /**
     * 经营风险-有无未结案件（1为有，0为无）
     */
    @ExcelProperty("经营风险-有无未结案件")
    private Boolean operatRiskUnfinishCaseFlag;

    /**
     * 新增企业标识（1为新增企业，0为存量企业）
     */
    @ExcelProperty("新增企业标识")
    private Boolean newCompanyFlag;

    /**
     * 是否是分支机构
     */
    @ExcelProperty("是否是分支机构")
    private Boolean isBranch;

    /**
     * 是否有分支机构
     */
    @ExcelProperty("是否有分支机构")
    private Boolean isHasBranch;

    /**
     * 电子邮箱
     */
    @ExcelProperty("电子邮箱")
    private String email;

    @ExcelProperty("经营范围")
    private String scope;

    @ExcelProperty("客户类型")
    private String custType;

}
