package com.cool.store.request.wallet;

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

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;

/**
 * @Author suzhuhong
 * @Date 2025/11/20 13:38
 * @Version 1.0
 */
@Data
public class CoolOpenBasicInfoRequest {

    @ApiModelProperty(value = "门店id")
    @NotBlank(message = "门店id不能为空")
    private String storeId;

    @ApiModelProperty(value = "门店编号")
    @NotEmpty(message = "门店编号不能为空")
    private String storeCode;

    /**
     * 签约人名称
     */
    @ApiModelProperty(value = "签约人名称")
    private String signerName;

    /**
     * 签约人身份证号码
     */
    @ApiModelProperty(value = "签约人身份证号码")
    private String signerIdCard;

    /**
     * 签约人手机号
     */
    @ApiModelProperty(value = "签约人手机号")
    private String signerPhone;

    /**
     * 签约人身份证正面
     */
    @ApiModelProperty(value = "签约人身份证正面")
    private String signerIdCardFront;

    /**
     * 签约人身份证反面
     */
    @ApiModelProperty(value = "签约人身份证反面")
    private String signerIdCardBack;

    /**
     * 营业执照名字
     */
    @ApiModelProperty(value = "营业执照名字")
    private String businessLicenseName;

    /**
     * 营业执照社会信用代码
     */
    @ApiModelProperty(value = "营业执照社会信用代码")
    private String businessLicenseCode;

    /**
     * 营业执照照片
     */
    @ApiModelProperty(value = "营业执照照片")
    @NotBlank(message = "营业执照照片不能为空")
    private String businessLicensePhoto;

    /**
     * 法人是否签约人
     */
    @ApiModelProperty(value = "法人是否签约人")
    private Integer legalIsSigner;


    /**
     * 法人名称
     */
    @ApiModelProperty(value = "法人名称")
    private String legalName;

    /**
     * 法人身份证号码
     */
    @ApiModelProperty(value = "法人身份证号码")
    private String legalIdCard;

    @ApiModelProperty("法人身份证有效期字段，yyyy-MM-dd")
    private String legalIdCardExpireTime;

    /**
     * 法人手机号
     */
    @ApiModelProperty(value = "法人手机号")
    private String legalPhone;


    /**
     * 法人身份证正面
     */
    @ApiModelProperty(value = "法人身份证正面")
    private String legalIdCardFront;

    /**
     * 法人身份证反面
     */
    @ApiModelProperty(value = "法人身份证反面")
    private String legalIdCardBack;

    /**
     * 结算卡
     */
    @ApiModelProperty(value = "结算卡")
    @NotBlank(message = "结算卡不能为空")
    private String settlementCard;

    /**
     * 开户支行名称
     */
    @ApiModelProperty(value = "开户支行名称")
    @NotBlank(message = "开户支行名称不能为空")
    private String bankBranchName;

    /**
     * 开户支行编号
     */
    @ApiModelProperty(value = "开户支行编号")
    @NotBlank(message = "开户支行编号不能为空")
    private String bankBranchCode;

    /**
     * 银行预留手机号
     */
    @ApiModelProperty(value = "银行预留手机号")
    @NotBlank(message = "银行预留手机号不能为空")
    private String bankReservedPhone;

    @ApiModelProperty("法人银行卡")
    private String legalBankCard;

    @ApiModelProperty("法人开户支行名称")
    private String legalBankBranchName;

    @ApiModelProperty("法人开户支行编号")
    private String legalBankBranchCode;

    @ApiModelProperty("银行预留手机号")
    private String legalBankReservedPhone;

    @ApiModelProperty("法人签约人关系，字典表legalSignerRelation")
    private String legalSignerRelation;
}
