package com.zcxk.evaluation.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.zcxk.base.BaseEntity;
import com.zcxk.model.ProgramItem;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * sc_evaluation_grade
 * @author: WYY
 * @date 2021-05-08 09:23
 */
@Data
@TableName("sc_evaluation_grade")
public class EvaluationGradeEntity extends BaseEntity {

    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "所属部门ID")
    @TableField(exist = false)
    @JsonIgnore
    private Integer deptOrgId;

    @ApiModelProperty(value = "所属公司名称")
    @TableField(exist = false)
    private String companyOrgName;

    @ApiModelProperty(value = "所属公司IDs")
    @TableField(exist = false)
    private List<Integer> companyOrgIds;

    /** 绩效等级(0A 1B 2C 3D 4E) */
    @ApiModelProperty(value = "绩效等级(0A 1B 2C 3D 4E)")
    private Long evaluationGrade;

    /** 绩效等级(0A 1B 2C 3D 4E) */
    @ApiModelProperty(value = "绩效等级(0A 1B 2C 3D 4E)")
    @TableField(exist = false)
    private String evaluationGradeName;

    /** 类型(0大于等于 2小于 1介于) */
    @ApiModelProperty(value = "类型(0大于等于 2小于 1介于)")
    private Long type;

    @ApiModelProperty(value = "类型(0大于等于 2小于 1介于)")
    @TableField(exist = false)
    private String typeName;

    /** 分值1 */
    @ApiModelProperty(value = "分值1")
    private Double valueOne;

    /** 分值2 */
    @ApiModelProperty(value = "分值2")
    private Double valueTwo;

    /** 备注 */
    @ApiModelProperty(value = "备注")
    private String remarks;

    @ApiModelProperty(value ="权限",hidden = true)
    @TableField(exist = false)
    @JsonIgnore
    private List<ProgramItem> programItems;

    @ApiModelProperty(value="用户权限类型")
    @TableField(exist = false)
    @JsonIgnore
    private Integer permissonType;

    /** 用户类型 */
    @ApiModelProperty(value = "用户类型(-9999 超管 -999普通用户 2普通用户)")
    @TableField(exist = false)
    @JsonIgnore
    private String userType;
}
