package com.mortals.xhx.module.staff.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.staff.model.vo.StaffPerformStatVo;
import lombok.Data;
/**
* 员工绩效统计实体对象
*
* @author zxfei
* @date 2023-05-17
*/
@Data
public class StaffPerformStatEntity extends StaffPerformStatVo {
    private static final long serialVersionUID = 1L;

    /**
    * 部门id号
    */
    private Long deptId;
    /**
    * 部门名称
    */
    private String deptName;
    /**
    * 部门绩效总分数
    */
    private BigDecimal totalScore;
    /**
    * 考勤绩效指标增加分数
    */
    private BigDecimal attendScoreAdd;
    /**
    * 考勤绩效指标扣减分数
    */
    private BigDecimal attendScoreSub;
    /**
    * 评价绩效指标增加分数
    */
    private BigDecimal assessScoreAdd;
    /**
    * 评价绩效指标扣减分数
    */
    private BigDecimal assessScoreSub;
    /**
    * 办件绩效指标增加分数
    */
    private BigDecimal workScoreAdd;
    /**
    * 办件绩效指标扣减分数
    */
    private BigDecimal workScoreSub;
    /**
    * 效能绩效指标增加分数
    */
    private BigDecimal effectScoreAdd;
    /**
    * 效能绩效指标扣减分数
    */
    private BigDecimal effectScoreSub;
    /**
    * 其它绩效指标增加分数
    */
    private BigDecimal otherScoreAdd;
    /**
    * 其它绩效指标扣减分数
    */
    private BigDecimal otherScoreSub;
    /**
    * 备注
    */
    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 StaffPerformStatEntity) {
            StaffPerformStatEntity tmp = (StaffPerformStatEntity) obj;
            if (this.getId() == tmp.getId()) {
                 return true;
            }
        }
        return false;
    }

    public void initAttrValue(){

            this.deptId = 0L;

            this.deptName = "";

            this.totalScore = new BigDecimal(0);

            this.attendScoreAdd = new BigDecimal(0);

            this.attendScoreSub = new BigDecimal(0);

            this.assessScoreAdd = new BigDecimal(0);

            this.assessScoreSub = new BigDecimal(0);

            this.workScoreAdd = new BigDecimal(0);

            this.workScoreSub = new BigDecimal(0);

            this.effectScoreAdd = new BigDecimal(0);

            this.effectScoreSub = new BigDecimal(0);

            this.otherScoreAdd = new BigDecimal(0);

            this.otherScoreSub = new BigDecimal(0);

            this.remark = "";

            this.year = -1;

            this.month = -1;

            this.day = -1;
    }
}