package com.chinaweal.aiccs.aiccs.susnate.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * 市场主体信息融合结果VO
 * 融合涉嫌冒用和冒用处理决定的市场主体信息
 *
 * @author iFlow
 * @since 2026-02-06
 */
@Data
@ApiModel("市场主体信息融合结果")
public class NateOperCombinedEntBaseVO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主体身份代码
     */
    @ApiModelProperty(value = "主体身份代码")
    private String pripid;

    /**
     * 统一社会信用代码
     */
    @ApiModelProperty(value = "统一社会信用代码")
    private String uniscid;

    /**
     * 注册号
     */
    @ApiModelProperty(value = "注册号")
    private String regno;

    /**
     * 企业（机构）名称
     */
    @ApiModelProperty(value = "企业（机构）名称")
    private String entname;

    /**
     * 市场主体类型
     */
    @ApiModelProperty(value = "市场主体类型")
    private String enttype;

    /**
     * 市场主体类型（中文名称）
     */
    @ApiModelProperty(value = "市场主体类型（中文名称）")
    private String enttypeCn;

    /**
     * 行业门类
     */
    @ApiModelProperty(value = "行业门类")
    private String industryphy;

    /**
     * 行业代码
     */
    @ApiModelProperty(value = "行业代码")
    private String industryco;

    /**
     * 成立日期
     */
    @ApiModelProperty(value = "成立日期")
    private String estdate;

    /**
     * 登记机关
     */
    @ApiModelProperty(value = "登记机关")
    private String regorg;

    /**
     * 登记（中文名称）
     */
    @ApiModelProperty(value = "登记机关（中文名称）")
    private String regorgCn;

    /**
     * 经营范围
     */
    @ApiModelProperty(value = "经营范围")
    private String opscope;

    /**
     * 经营(驻在)期限自
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "经营(驻在)期限自")
    private LocalDate opfrom;

    /**
     * 经营(驻在)期限至
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "经营(驻在)期限至")
    private LocalDate opto;

    /**
     * 登记状态
     */
    @ApiModelProperty(value = "登记状态")
    private String regstate;

    /**
     * 登记状态（中文名称）
     */
    @ApiModelProperty(value = "登记状态（中文名称）")
    private String regstateCn;

    /**
     * 住所
     */
    @ApiModelProperty(value = "住所")
    private String dom;

    /**
     * 注册资本(金)
     */
    @ApiModelProperty(value = "注册资本(金)")
    private BigDecimal regcap;

    /**
     * 注册资本(金)币种
     */
    @ApiModelProperty(value = "注册资本(金)币种")
    private String regcapcur;

    /**
     * 注册资本(金)币种（中文名称）
     */
    @ApiModelProperty(value = "注册资本(金)币种（中文名称）")
    private String regcapcurCn;

    /**
     * 法定代表人
     */
    @ApiModelProperty(value = "法定代表人")
    private String name;

    /**
     * 核准日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "核准日期")
    private LocalDate apprdate;

    /**
     * 属地监管工商所
     */
    @ApiModelProperty(value = "属地监管工商所")
    private String suporg;

    /**
     * 属地监管工商所（中文名称）
     */
    @ApiModelProperty(value = "属地监管工商所（中文名称）")
    private String suporgCn;

    /**
     * 监管机关
     */
    @ApiModelProperty(value = "监管机关")
    private String regulatory;

    /**
     * 监管机关（中文名称）
     */
    @ApiModelProperty(value = "监管机关（中文名称）")
    private String regulatoryName;

    /**
     * 是否含有涉嫌冒用他人身份取得登记信息（0否1是）
     */
    @ApiModelProperty(value = "是否含有涉嫌冒用他人身份取得登记信息（0否1是）")
    private String hasSusNateOperReg;

    /**
     * 是否含有冒用他人身份取得公司登记处理决定（0否1是）
     */
    @ApiModelProperty(value = "是否含有冒用他人身份取得公司登记处理决定（0否1是）")
    private String hasNateOperRegDec;
}