package com.chushang.loan.domin.dto;

import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.*;
import java.io.Serializable;
import java.math.BigDecimal;

@Data
@NoArgsConstructor
public class LoanFormData implements Serializable {

    /** 业务员id */
    @NotNull(message = "业务员id不能为空")
    private Long userId;

    /** 渠道id */
    @NotNull(message = "渠道id不能为空")
    private Long channelId;

    /** 渠道名称 */
    @NotEmpty(message = "渠道名称不能为空")
    @Size(max = 127, message = "渠道名称不能超过127个字符")
    private String channelName;

    /** 提交人姓名 */
    @NotEmpty(message = "提交人姓名不能为空")
    @Size(max = 127, message = "提交人姓名不能超过127个字符")
    private String authorName;

    /** 提交人联系方式 */
    @NotEmpty(message = "提交人联系方式不能为空")
    @Size(max = 127, message = "提交人联系方式不能超过127个字符")
    private String authorPhone;

    /** 客户姓名 */
    @NotEmpty(message = "客户姓名不能为空")
    @Size(max = 127, message = "客户姓名不能超过127个字符")
    private String customerName;

    /** 客户手机号 */
    @NotEmpty(message = "客户手机号不能为空")
    @Size(max = 63, message = "客户手机号不能超过63个字符")
    private String customerPhone;

    /** 申请金额 */
    @Digits(integer = 9, fraction = 2, message = "申请金额格式不正确")
    @DecimalMin(value = "0.00", message = "申请金额不能是负数")
    @NotNull(message = "申请金额不能为空")
    private BigDecimal applicationAmount;

    /** 房屋地址 */
    @NotEmpty(message = "房屋地址不能为空")
    @Size(max = 310, message = "房屋地址不能超过310个字符")
    private String houseAddress;

    /** 房屋面积 */
    @NotEmpty(message = "房屋面积不能为空")
    @Size(max = 63, message = "房屋面积不能超过63个字符")
    private String houseArea;
}
