package org.springblade.yeePay.entity.saas.account;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springblade.yeePay.common.YeepayApiConstant;

import javax.validation.constraints.NotBlank;

@NoArgsConstructor
@AllArgsConstructor
@Data
@Builder
@ApiModel("提现卡-修改/注销入参")
public class WithdrawCardModifyDto {

	@NotBlank
	@ApiModelProperty(value = "商户编号",required = true)
	private String merchantNo;

	@ApiModelProperty(value = "银行账号:银行卡号和提现卡标识二选一必填")
	private String accountNo;

	@ApiModelProperty(value = "提现卡标识:银行卡号和提现卡标识二选一必填")
	private String bindId;

	/**
	 * 可选项如下:
	 * MODIFY:修改
	 * CANCELLED:注销
	 */
	@NotBlank
	@ApiModelProperty(value = "银行卡操作类型",required = true)
	private YeepayApiConstant.bankCardOperateType bankCardOperateType;

	@ApiModelProperty(value = "开户银行编码:当操作类型为修改时，可填写此参数，开户行编码和开户支行编码不能同时为空；")
	private String bankCode;

	@ApiModelProperty(value = "开户支行编码:当操作类型为修改时，可填写此参数开户行编码和开户支行编码不能同时为空")
	private String branchCode;
}
