package com.mortals.xhx.module.check.model;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.check.model.vo.CheckWindowWorkmanPerformVo;
import lombok.Data;
/**
* 窗口人员考核汇总核查实体对象
*
* @author zxfei
* @date 2024-01-17
*/
@Data
public class CheckWindowWorkmanPerformEntity extends CheckWindowWorkmanPerformVo {
    private static final long serialVersionUID = 1L;

    /**
    * 记录ID
    */
    private Long recordId;
    /**
    * 考核年度
    */
    private Integer year;
    /**
    * 考核月份
    */
    private Integer month;
    /**
    * 窗口ID
    */
    private Long windowId;
    /**
    * 窗口名称
    */
    private String windowName;
    /**
    * 窗口负责人id
    */
    private Long ownerId;
    /**
    * 窗口负责人名称
    */
    private String ownerName;
    /**
    * 所属部门id
    */
    private Long deptId;
    /**
    * 所属部门名称
    */
    private String deptName;
    /**
    * 所属大厅
    */
    private Long salaId;
    /**
    * 所属大厅名称
    */
    private String salaName;
    /**
    * 考核表单名称
    */
    private String fromName;
    /**
    * 提交时间
    */
    private Date submitDate;
    /**
    * 管理组核查人员
    */
    @Excel(name = "管理组核查人员")
    private String manageCheckPerson;
    /**
    * 管理组核查时间
    */
    private Date manageCheckTime;
    /**
    * 管理组核查说明
    */
    @Excel(name = "管理组核查说明")
    private String manageCheckDesc;
    /**
    * 管理组核查结果(1.通过,2.不通过)
    */
    @Excel(name = "管理组核查结果", readConverterExp = "1=通过,2=不通过")
    private String manageCheckResult;
    /**
    * 备注
    */
    private String remark;
    @Override
    public int hashCode() {
         return this.getId().hashCode();
    }
    @Override
    public boolean equals(Object obj) {
        if (obj == null) return false;
        if (obj instanceof CheckWindowWorkmanPerformEntity) {
            CheckWindowWorkmanPerformEntity tmp = (CheckWindowWorkmanPerformEntity) obj;
            if (this.getId() == tmp.getId()) {
                 return true;
            }
        }
        return false;
    }

    public void initAttrValue(){
            this.recordId = null;
            this.year = DateUtil.year(new Date());
            this.month = DateUtil.month(new Date())+1;
            this.windowId = null;
            this.windowName = "";
            this.ownerId = null;
            this.ownerName = "";
            this.deptId = null;
            this.deptName = "";
            this.salaId = null;
            this.salaName = "";
            this.fromName = "";
            this.submitDate = new Date();
            this.manageCheckPerson = "";
            this.manageCheckTime = new Date();
            this.manageCheckDesc = "";
            this.manageCheckResult = "";
            this.remark = "";
    }
}