package com.qs.mp.channel.domain.param;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.qs.mp.common.enums.ChannelCertifyStatusEnum;
import com.qs.mp.common.enums.SiteTypeEnum;

import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import javax.validation.constraints.NotNull;

import lombok.Data;

/**
 * @describe 经销商经销商实体类
 * @auther quanshu
 * @create 2022-03-02 12:22:24
 */
@Data
public class SaleSiteParam{

	@ApiModelProperty(value = "经销商ID",required=false)
	private Long channelId;
	
	@NotNull(message = "经销商名称不能为空")
	@ApiModelProperty(value = "经销商名称",required=true)
	private String name;

	@NotNull(message = "手机不能为空")
	@ApiModelProperty(value = "手机",required=true)
	private String mobile;

	@NotNull(message = "联系人不能为空")
	@ApiModelProperty(value = "联系人",required=true)
	private String contact;

	@NotNull(message = "上级渠道不能为空")
	@ApiModelProperty(value = "上级渠道",required=true)
	private Long parentId;
	/**
	   * 经销商类型
	   */
	@NotNull(message = "门店类型上级渠道不能为空")
	@JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
	private SiteTypeEnum siteType;
	  
   /**
    * 门店名称(用于用户端优惠券的详情页，说明优惠券的适用门店)
    */
	@NotNull(message = "门店名称上级渠道不能为空")
	private String siteName;

	@NotNull(message = "省ID不能为空")
	@ApiModelProperty(value = "省ID",required=true)
	private Long provinceId;

	@NotNull(message = "城市ID不能为空")
	@ApiModelProperty(value = "城市ID",required=true)
	private Long cityId;

	@NotNull(message = "区ID不能为空")
	@ApiModelProperty(value = "区ID",required=true)
	private Long areaId;

	@NotNull(message = "省不能为空")
	@ApiModelProperty(value = "省",required=true)
	private String province;

	@NotNull(message = "城市不能为空")
	@ApiModelProperty(value = "城市",required=true)
	private String city;

	@NotNull(message = "区不能为空")
	@ApiModelProperty(value = "区",required=true)
	private String area;

	@NotNull(message = "佣金比例不能为空")
	@ApiModelProperty(value = "分佣百分比",required=true)
    private BigDecimal commRate;
	
	@NotNull(message = "详细地址不能为空")
	@ApiModelProperty(value = "详细地址",required=true)
	private String address;
	
	@NotNull(message = "营业执照不能为空")
	@ApiModelProperty(value = "营业执照",required=true)
	private String bizLicensePic;

	@NotNull(message = "门头照片不能为空")
	@ApiModelProperty(value = "门头照片",required=true)
	private String doorPic;

	@NotNull(message = "认证状态不能为空")
	@JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
	private ChannelCertifyStatusEnum certifyStatus;
}
