package com.crm.rely.backend.core.pojo.table.ucard;

import com.crm.rely.backend.core.pojo.BaseTable;
import lombok.Data;

import javax.persistence.Entity;
import javax.persistence.Table;

/**
 * 代付 付款人信息对象
 */
@Data
@Entity
@Table(name = "ucard_global_payer_payee")
public class CardGlobalPayerPayeeTable extends BaseTable {

    /**
     * PayouCard订单号
     */
    private Long orderNo;

    //付款人信息
    /**
     * 付款人类型。INDIVIDUAL：个人
     */
    private String payerType;

    /**
     * 付款人姓。不支持中文字符[2 .. 50 ] 个字符
     */
    private String payerLastName;

    /**
     * 付款人名。不支持中文字符[2 .. 50 ] 个字符
     */
    private String payerFirstName;

    /**
     * 付款人证件号码。不支持中文字符[6 .. 18 ] 个字符
     */
    private String payerIdNo;

    /**
     * 付款人证件类型。参见dictionary_biz.pdf（1.1. Idno Type）
     */
    private String payerIdNoType;

    /**
     * 付款人证件颁发国家。国家代码（2位数）。参见dictionary_common.xlsx（sheet. regin）
     */
    private String payerIdCountry;

    /**
     * 付款人出生日期。yyyy-MM-dd
     */
    private String payerBirthday;

    /**
     * 付款人国籍。国家代码（2位数）。参见dictionary_common.xlsx（sheet. regin）
     */
    private String payerNationalityCountry;

    /**
     * 付款人手机号码。例如：+37012345678。[8 .. 15 ] 个字符
     */
    private String payerMobile;

    /**
     * 付款人居住国家。国家代码（2位数）。参见dictionary_common.xlsx（sheet. regin）
     */
    private String payerCountryCode;

    /**
     * 付款人居住城市代码。参见dictionary_common.xlsx（sheet. city）
     */
    private String payerCityCode;

    /**
     * 付款人地址。不支持中文字符[10 .. 100 ] 个字符
     */
    private String payerAddress;

    /**
     * 付款人邮编。[3 .. 9 ] 个字符
     */
    private String payerPostCode;

    /**
     * 付款人职业。仅支持英文[3 .. 20 ] 个字符
     */
    private String payerOccupation;


    //收款人信息
    /**
     * 银行id
     */
    private Long bankId;

    /**
     * 收款人帐号。会进行大写转换处理。不支持中文字符[2 .. 48 ] 个字符
     */
    private String benAccountNum;

    /**
     * 收款人户名（银行卡号户名）。英文名称[1 .. 100 ] 个字符；CNY币种请填写汉字
     */
    private String benAccountName;

    /**
     * 收款人居住国家。国家代码（2位数）。参见dictionary_common.xlsx（sheet. regin）
     */
    private String benCountryCode;

    /**
     * 收款人居住城市代码。参见dictionary_common.xlsx（sheet. city）
     */
    private String benCityCode;

    /**
     * 收款人地址。英文地址[10 .. 100 ] 个字符
     */
    private String benAddress;

    /**
     * 收款人邮编。[3 .. 9 ] 个字符
     */
    private String benPostCode;

    /**
     * 收款人银行编码。[6 .. 12 ] 个字符
     */
    private String benBankCode;

    /**
     * 收款人中转行。[8 ..11 ] 个字符
     */
    private String benTransBankSwift;

    /**
     * 收款人姓。英文字符[2 .. 60 ] 个字符；CNY币种请填写汉字
     */
    private String benLastName;

    /**
     * 收款人名。英文字符[2 .. 60 ] 个字符；CNY币种请填写汉字
     */
    private String benFirstName;

    /**
     * 收款人国籍。国家代码（2位数）。参见dictionary_common.xlsx（sheet. regin）
     */
    private String benNationalityCountry;

    /**
     * 收款人证件类型。参见dictionary_biz.pdf（1.1. Idno type）
     */
    private String benIdNoType;

    /**
     * 收款人证件号码。[6 .. 18] 个字符
     */
    private String benIdNo;

    /**
     * 收款人证件有效期。不能小于当前时间 yyyy-MM-dd
     */
    private String benIdExpirationDate;

    /**
     * 收款人出生日期。yyyy-MM-dd
     */
    private String benBirthday;

    /**
     * 收款人手机区号。例：+86。[2 .. 5 ] 个字符
     */
    private String benMobileCode;

    /**
     * 收款人手机号。[5 .. 15 ] 个字符
     */
    private String benMobile;

    /**
     * 收款人银行账户类型。参见dictionary_biz.pdf（2.1. Bank account type）
     */
    private String benBankAccountType;
    
}
