package com.ruoyi.group.domain.dto;

import com.ruoyi.group.domain.entity.CustGroup;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 网格导入客群DTO
 *
 * @author ruoyi
 */
@Data
public class GridImportDTO {

    /**
     * 客群信息
     */
    @ApiModelProperty(value = "客群信息", name = "custGroup")
    @Valid
    @NotNull(message = "客群信息不能为空")
    private CustGroup custGroup;

    /**
     * 网格类型：0=绩效网格, 1=地理网格, 2=绘制网格
     */
    @ApiModelProperty(value = "网格类型：0=绩效网格, 1=地理网格, 2=绘制网格", name = "gridType")
    @NotBlank(message = "网格类型不能为空")
    private String gridType;

    /**
     * 绩效网格业务类型：retail=零售, corporate=公司（gridType=0时必填）
     */
    @ApiModelProperty(value = "绩效网格业务类型：retail=零售, corporate=公司", name = "cmpmBizType")
    private String cmpmBizType;

    /**
     * 绩效网格客户经理柜员号列表（gridType=0时必填）
     */
    @ApiModelProperty(value = "客户经理柜员号列表", name = "userNames")
    private List<String> userNames;

    /**
     * 地理网格ID列表（gridType=1时必填）
     */
    @ApiModelProperty(value = "地理网格ID列表", name = "regionGridIds")
    private List<Long> regionGridIds;

    /**
     * 绘制网格ID列表（gridType=2时必填）
     */
    @ApiModelProperty(value = "绘制网格ID列表", name = "drawGridIds")
    private List<Long> drawGridIds;
}