package com.hys.app.model.erp.entity;

import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 公司表
 */
@Getter
@Setter
public class CompanyDO {
    /**
     * 名称
     */
    @ApiModelProperty("公司名称")
    @NotBlank(message = "公司名称不能为空")
    private String name;
    /**
     * 营业执照
     */
    @ApiModelProperty("营业执照")
    @NotBlank(message = "营业执照不能为空")
    private String license;
    /**
     * 统一社会性用代码
     */
    @ApiModelProperty("统一社会性用代码")
    @NotBlank(message = "统一社会性用代码不能为空")
    private String creditCode;
    /**
     * 行业
     */
    @ApiModelProperty("行业")
    @NotBlank(message = "行业不能为空")
    private String industry;
    /**
     * 地址
     */
    @ApiModelProperty("地址")
    @NotBlank(message = "地址不能为空")
    private String address;
    /**
     * 省
     */
    @ApiModelProperty("省")
    @NotBlank(message = "省不能为空")
    private String province;
    /**
     * 市
     */
    @ApiModelProperty("市")
    @NotBlank(message = "市不能为空")
    private String city;
    /**
     * 县
     */
    @ApiModelProperty("县")
    @NotBlank(message = "县不能为空")
    private String area;
    /**
     * 邮政编码
     */
    @ApiModelProperty("邮政编码")
    private String postalCode;
    /**
     * 联系人
     */
    @ApiModelProperty("联系人")
    @NotBlank(message = "联系人不能为空")
    private String userName;
    /**
     * 联系人电话
     */
    @ApiModelProperty("联系人电话")
    @NotBlank(message = "联系人电话不能为空")
    private String phone;
    /**
     * 邮箱
     */
    @ApiModelProperty("邮箱")
    private String email;
    /**
     * 官网
     */
    @ApiModelProperty("官网")
    private String website;
    /**
     * 使用截止时间
     */
    @ApiModelProperty("使用截止时间")
    @NotNull(message = "使用截止时间不能为空")
    private LocalDateTime endUseTime;

    /**
     * 最大创建账号数
     */
    @ApiModelProperty("最大创建账号数")
    @NotNull(message = "最大创建账号数不能为空")
    private Integer userNum;
    /**
     * 付款金额
     */
    @ApiModelProperty("累计付款金额")
    private BigDecimal money;
    /**
     * 权限id
     */
    @ApiModelProperty("套餐id")
    @NotNull(message = "套餐不能为空")
    private Long roleId;

    /**
     * 本次付款金额
     */
    @ApiModelProperty("本次付款金额")
    @NotNull(message = "本次应付金额不能为空")
    private BigDecimal thisMoney;

    /**
     * 本次购买天数
     */
    @ApiModelProperty("本次购买天数")
    @NotNull(message = "本次购买天数不能为空")
    private Integer thisDay;

    @ApiModelProperty("套餐id")
    @NotNull(message = "套餐不能为空")
    private Long companyPackageId;

}
