package com.yn.bftl.thirdparty.modules.chinaums.dto.chinaums;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;

/**
 * 银联创建个人DTO
 *
 * @author huabiao
 * @create 2022/12/19  11:15
 **/
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "ChinaumsCreateCusDTO", description = "银联创建个人DTO")
public class ChinaumsCreateCusDTO {

    @ApiModelProperty(value = "平台订单号", hidden = true)
    private String outRequestNo;

    @ApiModelProperty(value = "证件人像面照片", required = true)
    @NotBlank
    private String idCardCopy;

    @ApiModelProperty(value = "证件国徽面照片", required = true)
    @NotBlank
    private String idCardNational;

    @ApiModelProperty(value = "证件号码", required = true)
    @NotBlank
    private String idCardNumber;

    @ApiModelProperty(value = "证件名称", required = true)
    @NotBlank
    private String idCardName;

    @ApiModelProperty(value = "证件有效期", hidden = true)
    private String idCardValidTime;

    @ApiModelProperty(value = "发证机关")
    private String idCardIssuingAuthority;

    @ApiModelProperty(value = "手机号码", required = true)
    @NotBlank
    private String mobileNumber;

    @ApiModelProperty(value = "开户银行编码", required = true)
    @NotBlank
    private String settleAcctBankCode;

    @ApiModelProperty(value = "开户名称（用户姓名）", required = true)
    @NotBlank
    private String settleAcctName;

    @ApiModelProperty(value = "开户银行联行号", required = true)
    @NotBlank
    private String settleAcctBankBranchCode;

    @ApiModelProperty(value = "银行账号", required = true)
    @NotBlank
    private String settleAcctBankAcctNo;

    @ApiModelProperty(value = "职业", hidden = true)
    private String settleAcctProfession;

    @ApiModelProperty(value = "短信验证码", required = true)
    @NotBlank
    private String smsCode;

    @ApiModelProperty(value = "交易授权码", required = true)
    @NotBlank
    private String password;

    @ApiModelProperty(value = "国籍", hidden = true)
    private String nationality;

    @ApiModelProperty(value = "性别：1(\"男\"),2(\"女\")", required = true)
    @NotBlank
    private String gender;

    @ApiModelProperty(value = "住所地")
    private String workAddress;

}
