package com.zksy.data.domain.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

/**
 * 主要成员信息表
 * @TableName xcr_major_members
 */
@TableName(value ="xcr_major_members")
@Data
public class XcrMajorMembers extends BasePo implements Serializable {
    @TableField("ETPS_ID")
    @JsonProperty("ETPS_ID")
    private String ETPS_ID;  // 人员ID

    @TableField("PERSONID")
    @JsonProperty("PERSONID")
    private String PERSONID;  // 人员ID

    @TableField("PRIPID")
    @JsonProperty("PRIPID")
    private String PRIPID;  // 主体身份代码

    @TableField("NAME")
    @JsonProperty("NAME")
    private String NAME;  // 姓名

    @TableField("SEX")
    @JsonProperty("SEX")
    private String SEX;  // 性别

    @TableField("NATDATE")
    @JsonProperty("NATDATE")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date NATDATE;  // 出生日期

    @TableField("CERTYPE")
    @JsonProperty("CERTYPE")
    private String CERTYPE;  // 证件类型

    @TableField("CERNO")
    @JsonProperty("CERNO")
    private String CERNO;  // 证件号码/代表证编号（DB320）

    @TableField("POSITION")
    @JsonProperty("POSITION")
    private String POSITION;  // 职务

    @TableField("POSITION_CN")
    @JsonProperty("POSITION_CN")
    private String POSITION_CN;  // 职务（中文名称）

    @TableField("POSBRFORM")
    @JsonProperty("POSBRFORM")
    private String POSBRFORM;  // 职务产生方式

    @TableField("OCCSTBEAPP")
    @JsonProperty("OCCSTBEAPP")
    private String OCCSTBEAPP;  // 申请前职业状况

    @TableField("LEREPSIGN")
    @JsonProperty("LEREPSIGN")
    private String LEREPSIGN;  // 法定代表人标志/首席代表标志/负责人标识

    @TableField("APPOUNIT")
    @JsonProperty("APPOUNIT")
    private String APPOUNIT;  // 任命单位/委派方

    @TableField("TEL")
    @JsonProperty("TEL")
    private String TEL;  // 联系电话

    @TableField("COUNTRY")
    @JsonProperty("COUNTRY")
    private String COUNTRY;  // 国别(地区)

    @TableField("TELNUMBER")
    @JsonProperty("TELNUMBER")
    private String TELNUMBER;  // 固定电话

    @TableField("MOBTel")
    @JsonProperty("MOBTel")
    private String MOBTel;  // 移动电话

    @TableField("EMAIL")
    @JsonProperty("EMAIL")
    private String EMAIL;  // 电子邮箱

    @TableField("HOUSEADD")
    @JsonProperty("HOUSEADD")
    private String HOUSEADD;  // 住址

    @TableField("ARRCHDATE")
    @JsonProperty("ARRCHDATE")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date ARRCHDATE;  // 入境时间

    @TableField("REPCARFROM")
    @JsonProperty("REPCARFROM")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date REPCARFROM;  // 代表证期限自/任职起始日期

    @TableField("REPCARTO")
    @JsonProperty("REPCARTO")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date REPCARTO;  // 代表证期限至/任职截止日期

    @TableField("POSTALCODE")
    @JsonProperty("POSTALCODE")
    private String POSTALCODE;  // 邮政编码

    @TableField("S_EXT_DATATIME")
    @JsonProperty("S_EXT_DATATIME")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date S_EXT_DATATIME;  // 数据更新时间
}