package com.zksy.data.domain.po;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Data  // Lombok 的 Data 注解自动生成 getter, setter, toString 等方法
@TableName(value = "xcr_institutional_clients")  // MyBatis-Plus 的 TableName 注解指定对应的数据库表名
public class XcrInstitutionalClients extends BasePo implements Serializable {

    @TableField("ID")
    @JsonProperty("ID")
    private Integer ID;  // 唯一记录id

    @TableField("DWBH")
    @JsonProperty("DWBH")
    private String DWBH;  // 机构客户号

    @TableField("DWMC")
    @JsonProperty("DWMC")
    private String DWMC;  // 单位名称

    @TableField("DWDZ")
    @JsonProperty("DWDZ")
    private String DWDZ;  // 单位地址

    @TableField("DWFRDBXM")
    @JsonProperty("DWFRDBXM")
    private String DWFRDBXM;  // 单位法人代表姓名

    @TableField("DWFRDBZJLX")
    @JsonProperty("DWFRDBZJLX")
    private String DWFRDBZJLX;  // 单位法人代表证件类型

    @TableField("DWFRDBZJHM")
    @JsonProperty("DWFRDBZJHM")
    private String DWFRDBZJHM;  // 单位法人代表证件号码

    @TableField("DWLSGX")
    @JsonProperty("DWLSGX")
    private String DWLSGX;  // 单位隶属关系

    @TableField("DWJJLX")
    @JsonProperty("DWJJLX")
    private String DWJJLX;  // 单位经济类型

    @TableField("DWSSHY")
    @JsonProperty("DWSSHY")
    private String DWSSHY;  // 单位所属行业

    @TableField("DWYB")
    @JsonProperty("DWYB")
    private String DWYB;  // 单位邮编

    @TableField("DWDZXX")
    @JsonProperty("DWDZXX")
    private String DWDZXX;  // 单位电子信箱

    @TableField("DWFXR")
    @JsonProperty("DWFXR")
    private String DWFXR;  // 单位发薪日

    @TableField("JBRXM")
    @JsonProperty("JBRXM")
    private String JBRXM;  // 经办人姓名

    @TableField("JBRGDDHHM")
    @JsonProperty("JBRGDDHHM")
    private String JBRGDDHHM;  // 经办人固定电话号码

    @TableField("JBRSJHM")
    @JsonProperty("JBRSJHM")
    private String JBRSJHM;  // 经办人手机号码

    @TableField("JBRZJLX")
    @JsonProperty("JBRZJLX")
    private String JBRZJLX;  // 经办人证件类型

    @TableField("JBRZJHM")
    @JsonProperty("JBRZJHM")
    private String JBRZJHM;  // 经办人证件号码

    @TableField("JBREMAIL")
    @JsonProperty("JBREMAIL")
    private String JBREMAIL;  // 经办人电子信箱

    @TableField("ZZJGDM")
    @JsonProperty("ZZJGDM")
    private String ZZJGDM;  // 组织机构代码

    @TableField("DWSLRQ")
    @JsonProperty("DWSLRQ")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date DWSLRQ;  // 单位设立日期

    @TableField("DWKHRQ")
    @JsonProperty("DWKHRQ")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date DWKHRQ;  // 单位开户日期

    @TableField("STYHMC")
    @JsonProperty("STYHMC")
    private String STYHMC;  // 受托银行名称

    @TableField("STYHDM")
    @JsonProperty("STYHDM")
    private String STYHDM;  // 受托银行代码

    @TableField("JGBM")
    @JsonProperty("JGBM")
    private String JGBM;  // 管理机构代码

    @TableField("SSQXBM")
    @JsonProperty("SSQXBM")
    private String SSQXBM;  // 所属区县编码

    @TableField("DWSBZH")
    @JsonProperty("DWSBZH")
    private String DWSBZH;  // 单位社保账号

    @TableField("DWFRDBLXDH")
    @JsonProperty("DWFRDBLXDH")
    private String DWFRDBLXDH;  // 单位法人代表联系电话

    @TableField("DWFRDBYDDH")
    @JsonProperty("DWFRDBYDDH")
    private String DWFRDBYDDH;  // 单位法人代表移动电话

    @TableField("ZCZS")
    @JsonProperty("ZCZS")
    private String ZCZS;  // 注册住所

    @TableField("ZCZB")
    @JsonProperty("ZCZB")
    private BigDecimal ZCZB;  // 注册资本

    @TableField("ZCRQ")
    @JsonProperty("ZCRQ")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date ZCRQ;  // 注册登记日期

    @TableField("YYZZDJJG")
    @JsonProperty("YYZZDJJG")
    private String YZZDJJG;  // 营业执照登记机关

    @TableField("YYYZZCH")
    @JsonProperty("YYYZZCH")
    private String YYYZZCH;  // 营业执照注册号

    @TableField("DJRQ")
    @JsonProperty("DJRQ")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date DJRQ;  // 登记日期

    @TableField("DJSJ")
    @JsonProperty("DJSJ")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date DJSJ;  // 登记时间

    @TableField("DJCZYID")
    @JsonProperty("DJCZYID")
    private String DJCZYID;  // 登记操作员id

    @TableField("DJCZY")
    @JsonProperty("DJCZY")
    private String DJCZY;  // 登记操作员

    @TableField("DWJC")
    @JsonProperty("DWJC")
    private String DWJC;  // 单位简称

    @TableField("SWDJH")
    @JsonProperty("SWDJH")
    private String SWDJH;  // 税务登记号

    @TableField("JBZHKHYH")
    @JsonProperty("JBZHKHYH")
    private String JBZHKHYH;  // 基本账户开户银行

    @TableField("JBZHYHZH")
    @JsonProperty("JBZHYHZH")
    private String JBZHYHZH;  // 基本账户银行账号

    @TableField("JBZHKHMC")
    @JsonProperty("JBZHKHMC")
    private String JBZHKHMC;  // 基本账户开户名称

    @TableField("DWSSQYBM")
    @JsonProperty("DWSSQYBM")
    private String DWSSQYBM;  // 单位所属区域编码

    @TableField("DWSSSSBM")
    @JsonProperty("DWSSSSBM")
    private String DWSSSSBM;  // 单位所属省市编码

    @TableField("DWSZCSBM")
    @JsonProperty("DWSZCSBM")
    private String DWSZCSBM;  // 单位所在城市编码

    @TableField("XXHGLBM")
    @JsonProperty("XXHGLBM")
    private String XXHGLBM;  // 信息化管理部门

    @TableField("KHLXBM")
    @JsonProperty("KHLXBM")
    private String KHLXBM;  // 客户类型编码

    @TableField("KHJBBM")
    @JsonProperty("KHJBBM")
    private String KHJBBM;  // 客户级别编码

    @TableField("DWWWDZ")
    @JsonProperty("DWWWDZ")
    private String DWWWDZ;  // 单位外网地址

    @TableField("PYJX")
    @JsonProperty("PYJX")
    private String PYJX;  // 拼音简写

    @TableField("JGLBBM")
    @JsonProperty("JGLBBM")
    private String JGLBBM;  // 机构类别编码

    @TableField("FRXB")
    @JsonProperty("FRXB")
    private Boolean FRXB;  // 法人性别

    @TableField("FRGJ")
    @JsonProperty("FRGJ")
    private String FRGJ;  // 法人国籍

    @TableField("SFDLFR")
    @JsonProperty("SFDLFR")
    private Boolean SFDLFR;  // 是否独立法人

    @TableField("FRZSDM")
    @JsonProperty("FRZSDM")
    private String FRZSDM;  // 法人证书代码

    @TableField("SSZB")
    @JsonProperty("SSZB")
    private BigDecimal SSZB;  // 实收资本

    @TableField("ZZZSBH")
    @JsonProperty("ZZZSBH")
    private String ZZZSBH;  // 资质证书编号

    @TableField("DWYSDM")
    @JsonProperty("DWYSDM")
    private String DWYSDM;  // 单位预算代码

    @TableField("DJQD")
    @JsonProperty("DJQD")
    private String DJQD;  // 登记渠道

    @TableField("ZZJGLX")
    @JsonProperty("ZZJGLX")
    private String ZZJGLX;  // 组织机构类型

    @TableField("JBZHKHYH2")
    @JsonProperty("JBZHKHYH2")
    private String JBZHKHYH2;  // 基本账户开户银行2

    @TableField("JBZHYHZH2")
    @JsonProperty("JBZHYHZH2")
    private String JBZHYHZH2;  // 基本账户银行账号2

    @TableField("JBZHKHYH3")
    @JsonProperty("JBZHKHYH3")
    private String JBZHKHYH3;  // 基本账户开户银行3

    @TableField("JBZHYHZH3")
    @JsonProperty("JBZHYHZH3")
    private String JBZHYHZH3;  // 基本账户银行账号3

    @TableField("JBZHKHYH4")
    @JsonProperty("JBZHKHYH4")
    private String JBZHKHYH4;  // 基本账户开户银行4

    @TableField("JBZHYHZH4")
    @JsonProperty("JBZHYHZH4")
    private String JBZHYHZH4;  // 基本账户银行账号4

    @TableField("DWXZ")
    @JsonProperty("DWXZ")
    private String DWXZ;  // 单位性质

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