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

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.storlead.framework.annotate.AnnotateEnumType;
import com.storlead.framework.annotate.Dict;
import com.storlead.framework.annotate.OrgAutoMateAnnotate;
import com.storlead.framework.mybatis.entity.SysBaseField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/***
  * @Description: 业绩目标详情List
  * @Param:
  * @return:
  * @Author: YPZ
  * @Date: 2024/12/20 15:22
  */

@Data
public class TargetQuotaDetailsListVO {

    @ApiModelProperty(value = "目标配额主键")
    private Long id;

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

    @ApiModelProperty(value = "组织id")
    private Long organizationalId;

    @ApiModelProperty(value = "组织名称")
    private String organizationalName;

    @ApiModelProperty(value = "分配值/领取值类型（1上级、2剩余、3需要输入的、4同级、5下级、6下级剩余）")
    private Integer allocationType;

//    @ApiModelProperty(value = "领取值类型（1上级、2剩余、3同级）")
//    private Integer receiveType;

    @ApiModelProperty(value = "用户ID")
    @OrgAutoMateAnnotate(valueField = "userName",annotateType = AnnotateEnumType.USER)
    private Long userId;

    @ApiModelProperty(value = "用户名")
    private String userName;

    @ApiModelProperty(value = "部门ID")
//    @OrgAutoMateAnnotate(valueField = "deptName",annotateType = AnnotateEnumType.DEPT)
    private Long deptId;

    @ApiModelProperty(value = "部门名称")
    private String deptName;

    @ApiModelProperty(value = "分公司ID")
//    @OrgAutoMateAnnotate(valueField = "subCompanyName",annotateType = AnnotateEnumType.SUB_COMPANY)
    private Long subCompanyId;

    @ApiModelProperty(value = "分公司名称")
    private String subCompanyName;

    @ApiModelProperty(value = "公司ID")
//    @OrgAutoMateAnnotate(valueField = "companyName",annotateType = AnnotateEnumType.COMPANY)
    private Long companyId;

    @ApiModelProperty(value = "公司名称")
    private String companyName;

    @ApiModelProperty(value = "参与人员数")
    private Integer userNum;

    @ApiModelProperty(value = "下级范围id，逗号隔开")
    private String subScopeId;

    @ApiModelProperty(value = "下级范围名称，逗号隔开")
    private String subScopeName;

    @ApiModelProperty(value = "周期（1季度、2月度）")
    @Dict(dictCode = "target_cycle",valueField = "cycleName")
    private Integer cycle;

    @ApiModelProperty(value = "周期（1季度、2月度）")
    private String cycleName;

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

    @ApiModelProperty(value = "1月份或者季度")
    private BigDecimal monthOrQuarter1;

    @ApiModelProperty(value = "2月份或者季度")
    private BigDecimal monthOrQuarter2;

    @ApiModelProperty(value = "3月份或者季度")
    private BigDecimal monthOrQuarter3;

    @ApiModelProperty(value = "4月份或者季度")
    private BigDecimal monthOrQuarter4;

    @ApiModelProperty(value = "5月份或者季度")
    private BigDecimal monthOrQuarter5;

    @ApiModelProperty(value = "6月份或者季度")
    private BigDecimal monthOrQuarter6;

    @ApiModelProperty(value = "7月份或者季度")
    private BigDecimal monthOrQuarter7;

    @ApiModelProperty(value = "8月份或者季度")
    private BigDecimal monthOrQuarter8;

    @ApiModelProperty(value = "9月份或者季度")
    private BigDecimal monthOrQuarter9;

    @ApiModelProperty(value = "10月份或者季度")
    private BigDecimal monthOrQuarter10;

    @ApiModelProperty(value = "11月份或者季度")
    private BigDecimal monthOrQuarter11;

    @ApiModelProperty(value = "12月份或者季度")
    private BigDecimal monthOrQuarter12;

    @ApiModelProperty(value = "总计")
    private BigDecimal total;




}
