package org.jeecg.modules.shop.user.entity.dto;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

@Data
public class UserInfoDTO {

    /**类型 0个人 1公司*/
    @ApiModelProperty(value = "类型 0个人 1公司")
    private Integer type;
    /**手机区号*/
    @ApiModelProperty(value = "手机区号")
    private String areaCode;
    /**手机号*/
    @ApiModelProperty(value = "手机号")
    private String phone;
    /**全名*/
    @ApiModelProperty(value = "全名")
    private String fullName;
    /**firstName*/
    @ApiModelProperty(value = "firstName")
    private String firstName;
    /**lastName*/
    @ApiModelProperty(value = "lastName")
    private String lastName;
    /**头像*/
    @ApiModelProperty(value = "头像")
    private String photo;
    /**国家*/
    @ApiModelProperty(value = "国家")
    private String country;

    /**申请理由*/
    @ApiModelProperty(value = "申请理由")
    private String applicationReason;
    /**促进易杰发展*/
    @ApiModelProperty(value = "促进易杰发展")
    private String promoteBusiness;

    /**0paypal 1bank*/
    @NotNull(message = "payMethod is not null")
    @ApiModelProperty(value = "0paypal 1bank")
    private Integer payMethod;
    /**paypal email*/
    @ApiModelProperty(value = "paypal email")
    private String paypalEmail;
    /**paypal_beneficiarys_name*/
    @ApiModelProperty(value = "paypal_beneficiarys_name")
    private String paypalBeneficiarysName;
    /**bank_account_name*/
    @ApiModelProperty(value = "bank_account_name")
    private String bankAccountName;
    /**bank_account_number*/
    @ApiModelProperty(value = "bank_account_number")
    private String bankAccountNumber;
    /**back card-SWIFT/BIC Code*/
    @ApiModelProperty(value = "back card-SWIFT/BIC Code")
    private String bankCardCode;
    /**back card-BANK NAME*/
    @ApiModelProperty(value = "back card-BANK NAME")
    private String bankName;
    /**bank_address*/
    @ApiModelProperty(value = "bank_address")
    private String bankAddress;
    /**Corporate Name 类型为公司时填写*/
    @ApiModelProperty(value = "Corporate Name 类型为公司时填写")
    private String companyName;
    /**Position类型为公司时填写*/
    @ApiModelProperty(value = "Position类型为公司时填写")
    private String position;
    /**Date of Incorporation类型为公司时填写*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd ")
    @ApiModelProperty(value = "Date of Incorporation类型为公司时填写")
    private Date dateOfIncorporation;
    /**Company Size类型为公司时填写*/
    @ApiModelProperty(value = "Company Size类型为公司时填写")
    private String companySize;
    /**Business type类型为公司时填写*/
    @ApiModelProperty(value = "Business type类型为公司时填写")
    private String businessType;
}
