EvalGroupRewardRankLog.java 1.79 KB
package cn.fw.morax.domain.db.eval;

import cn.fw.common.data.entity.BaseAuditableTimeEntity;
import cn.fw.morax.domain.dto.eval.EvalGroupIndicatorPreconditionLaddersDTO;
import cn.fw.morax.domain.enums.EvalScopeEnum;
import cn.fw.morax.domain.enums.IndicatorTypeEnum;
import cn.fw.morax.domain.enums.RankIndicatorTypeEnum;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * <p>
 * 奖惩排名日志
 * </p>
 *
 * @author jiangchao
 * @since 2022-12-13
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(autoResultMap = true)
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class EvalGroupRewardRankLog extends BaseAuditableTimeEntity<EvalGroupRewardRankLog, Long>
        implements Comparable<EvalGroupRewardRankLog>{

    private static final long serialVersionUID = 1L;

    /**
     * 员工id
     */
    private Long poolId;

    /**
     * 考评范围; 1:门店考评 2:人员考评
     */
    private EvalScopeEnum scopeType;

    /**
     * 名称
     */
    private String name;

    /**
     * 考评奖惩 前置条件 配置id
     */
    private Long referId;
    /**
     * 指标类型 1.奖惩提成  2.前置条件指标
     */
    private RankIndicatorTypeEnum targetType;
    /**
     * 原始值
     */
    private BigDecimal value;
    /**
     * 达成目标
     */
    private BigDecimal reachValue;
    /**
     * 排名
     */
    private Integer rank;
    /**
     * 命中
     */
    private Boolean hit;

    /**
     * 数据日期
     */
    private LocalDate dataDate;

    /**
     * 集团
     */
    private Long groupId;

    private Boolean yn;

    @Override
    public int compareTo(EvalGroupRewardRankLog other) {
        return other.reachValue.compareTo(this.reachValue);
    }
}