package com.greenorange.promotion.model.dto.userAccount;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Min;
import lombok.Data;
import java.math.BigDecimal;

import java.io.Serial;
import java.io.Serializable;

/**
 * 用户账户添加请求体
 */
@Data
@Schema(description = "用户账户添加请求体", requiredProperties = {
                "cardHolder",
                "idCardNumber",
                "phoneNumber",
                "bankCardNumber",
                "openBank",
                "userId",
})
public class UserAccountAddRequest implements Serializable {

    /**
     * 持卡人
     */
    @NotBlank(message = "持卡人不能为空")
    @Schema(description = "持卡人", example = "chenxinzhi")
    private String cardHolder;

    /**
     * 身份证号
     */
    @NotBlank(message = "身份证号不能为空")
    @Schema(description = "身份证号", example = "110101199001011234")
    private String idCardNumber;

    /**
     * 手机号
     */
    @NotBlank(message = "手机号不能为空")
    @Schema(description = "手机号", example = "15888610253")
    private String phoneNumber;

    /**
     * 银行卡号
     */
    @NotBlank(message = "银行卡号不能为空")
    @Schema(description = "银行卡号", example = "5105105105105100")
    private String bankCardNumber;

    /**
     * 开户银行
     */
    @NotBlank(message = "开户银行不能为空")
    @Schema(description = "开户银行", example = "中国工商银行")
    private String openBank;


    @Serial
    private static final long serialVersionUID = 1L;
}

