package com.mortals.xhx.module.perform.model;
import java.math.BigDecimal;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.perform.model.vo.PerformPerposeStaffStatVo;
import lombok.Data;
/**
* 员工目标统计实体对象
*
* @author zxfei
* @date 2023-05-16
*/
@Data
public class PerformPerposeStaffStatEntity extends PerformPerposeStaffStatVo {
    private static final long serialVersionUID = 1L;

    /**
    * 员工id号
    */
    private Long staffId;
    /**
    * 员工名称
    */
    private String staffName;
    /**
    * 员工工号
    */
    private String number;
    /**
    * 旷工率
    */
    private BigDecimal absentRate;
    /**
    * 缺卡率
    */
    private BigDecimal absenceRate;
    /**
    * 迟到率
    */
    private BigDecimal lateRate;
    /**
    * 早退率
    */
    private BigDecimal earlyRate;
    /**
    * 请假率
    */
    private BigDecimal leaveRate;
    /**
    * 离岗率
    */
    private BigDecimal turnoverRate;
    /**
    * 睡觉率
    */
    private BigDecimal sleepRate;
    /**
    * 玩手机率
    */
    private BigDecimal playPhoneRate;
    /**
    * 办件超期率
    */
    private BigDecimal expireWorkRate;
    /**
    * 差评率
    */
    private BigDecimal negaReviewRate;
    /**
    * 备注
    */
    private String remark;
    /**
    * 年
    */
    private Integer year;
    /**
    * 月
    */
    private Integer month;
    /**
    * 日
    */
    private Integer day;
    @Override
    public int hashCode() {
         return this.getId().hashCode();
    }
    @Override
    public boolean equals(Object obj) {
        if (obj == null) return false;
        if (obj instanceof PerformPerposeStaffStatEntity) {
            PerformPerposeStaffStatEntity tmp = (PerformPerposeStaffStatEntity) obj;
            if (this.getId() == tmp.getId()) {
                 return true;
            }
        }
        return false;
    }

    public void initAttrValue(){

            this.staffId = 0L;

            this.staffName = "";

            this.number = "";

            this.absentRate = BigDecimal.valueOf(0.00);

            this.absenceRate = BigDecimal.valueOf(0.00);

            this.lateRate = BigDecimal.valueOf(0.00);

            this.earlyRate = BigDecimal.valueOf(0.00);

            this.leaveRate = BigDecimal.valueOf(0.00);

            this.turnoverRate = BigDecimal.valueOf(0.00);

            this.sleepRate = BigDecimal.valueOf(0.00);

            this.playPhoneRate = BigDecimal.valueOf(0.00);

            this.expireWorkRate = BigDecimal.valueOf(0.00);

            this.negaReviewRate = BigDecimal.valueOf(0.00);

            this.remark = "";

            this.year = -1;

            this.month = -1;

            this.day = -1;
    }
}