package com.storlead.sales.pojo.dto.target;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.storlead.framework.mybatis.query.QueryBaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 目标方案主表
 * </p>
 *
 * @author YPZ
 * @since 2024-12-11
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="TargetQuotaSearchDTO", description="目标查询DTO")
public class TargetQuotaSearchDTO extends QueryBaseEntity {

    @ApiModelProperty(value = "目标主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "所属年度")
    @TableField("year")
    private String year;

    @ApiModelProperty(value = "周期（1季度、2月度）")
    @TableField("cycle")
    private Integer cycle;

    @ApiModelProperty(value = "方式（1汇总、2分配、3认领）")
    @TableField("method")
    private Integer method;

    @ApiModelProperty(value = "指标类型（10新增客户、11新增线索、12跟进次数、30新增商机、40成交订单、41成交金额）")
    @TableField("type")
    private Integer type;

    @ApiModelProperty(value = "组织类型（1集团、2公司、3部门、4个人）")
    @TableField("organizational_type")
    private Integer organizationalType;

    @ApiModelProperty(value = "组织ids")
    private List<Long> organizationalIds;

    @ApiModelProperty(value = "认领状态（0未完成、1已完成）")
    @TableField("status")
    private Integer status;

    @ApiModelProperty(value = "用户ID")
    private List<Long> userIdList;

    @ApiModelProperty(value = "部门ID")
    private List<Long> deptIdList;

    @ApiModelProperty(value = "分公司ID")
    private List<Long> subCompanyIdList;

}
