package com.mmc.iuav.user.model.vo;

import com.mmc.iuav.group.Insert;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author: zj @Date: 2023/5/17 22:02
 */
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserApplyTagVO implements Serializable {
    private static final long serialVersionUID = -1004953417393220972L;

    @ApiModelProperty(value = "id")
    private Integer id;

    @ApiModelProperty(value = "加盟标签id", example = "1")
    @NotNull(
            message = "加盟标签id不能为空",
            groups = {Insert.class})
    private Integer cooperationTagId;

    @ApiModelProperty(value = "加盟合同订单编号")
    private String orderNo;

    @ApiModelProperty(value = "用户id")
    private Integer userAccountId;

    @ApiModelProperty(value = "申请人名称", example = "lisi")
    @NotBlank(
            message = "申请人名称不能为空",
            groups = {Insert.class})
    private String applyName;

    @ApiModelProperty(value = "申请人手机号", example = "19892885657")
    @NotBlank(
            message = "申请人手机号不能为空",
            groups = {Insert.class})
    private String applyPhone;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "附件")
    private List<AttachmentVO> attachmentList;

    @ApiModelProperty(value = "申请时间")
    private Date applyTime;

    @ApiModelProperty(value = "加盟类型名称")
    private String cooperationTagName;

    @ApiModelProperty(value = "认证企业名称")
    private String companyName;

    @ApiModelProperty(value = "审批状态 0:申请中 1：通过  2：驳回")
    private Integer approvalStatus;

    @ApiModelProperty(value = "服务资质内容")
    private String content;

    @ApiModelProperty(value = "服务评价⭐⭐⭐⭐⭐")
    private Integer score;

    @ApiModelProperty(value = "品牌名称", example = "科比特")
    private String brandName;

    @ApiModelProperty(value = "品牌logo", example = "http://")
    private String brandLogo;

    @ApiModelProperty(value = "营业执照", example = "http://")
    private String licenseImg;

    @ApiModelProperty(value = "地址信息", example = "广东省", required = true)
    @NotBlank(message = "地址信息不能为空", groups = {Insert.class})
    private String address;
    @ApiModelProperty(value = "纬度", example = "22.5749", required = true)
    @NotNull(message = "纬度不能为空", groups = {Insert.class})
    private Double lat;
    @ApiModelProperty(value = "经度", example = "113.992563", required = true)
    @NotNull(message = "经度不能为空", groups = {Insert.class})
    private Double lon;

    @ApiModelProperty(value = "后台账号id")
    private Integer backUserId;

    @ApiModelProperty(value = "签署状态： 0、等待平台签署1、平台签署失败 2、等待（买家/供应商）签署（平台签署成功） 3、（买家/供应商）签署失败 4、（买家/供应商）签署成功、5、归档")
    private Integer signStatus;
}
