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

import com.yn.bftl.thirdparty.common.dto.BaseSecretDTO;
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 2023/2/15  15:08
 **/
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "ByxChinaumsAddBankCardDTO", description = "银联增加银行卡DTO")
public class ByxChinaumsAcctBindBankCardDTO extends BaseSecretDTO {

    @ApiModelProperty(value = "电子账户 ID")
    private String walletId;

    @ApiModelProperty(value = "银行账户类型：1(\"对私银行卡\"),0(\"对公银行账户\")", required = true)
    private String bankAcctType;

    @ApiModelProperty(value = "开户银行名称", required = true)
    private String bankName;

    @ApiModelProperty(value = "银行账户户名", required = true)
    private String bankAcctName;

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

    @ApiModelProperty(value = "银行账号")
    @NotBlank
    private String bankAcctNo;

    @ApiModelProperty(value = "需要绑定的卡在银行的预留手机号(绑定时必填)")
    private String mobileNo;

    @ApiModelProperty(value = "短信验证码(如需额外验证，可调用发送短信验证码接口)")
    private String smsAuthCode;

    @ApiModelProperty(value = "操作方式(1：绑定 2：绑定并设置为默认卡 3：解绑 4：设置默认卡)")
    @NotBlank
    private String oprtType;

    @ApiModelProperty(value = "证件编号")
    private String idCard;

    @ApiModelProperty(value = "电子联行号")
    private String elecBankNo;
}
