package com.mortals.xhx.module.staff.model;

import java.util.Date;
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.StaffBlackVo;
/**
* 员工黑名单信息实体对象
*
* @author zxfei
* @date 2023-04-07
*/

public class StaffBlackEntity extends StaffBlackVo {
    private static final long serialVersionUID = 1L;

    /**
    * 员工ID
    */
    private Long staffId;
    /**
    * 员工姓名
    */
    private String staffName;
    /**
    * 联系电话
    */
    private String phoneNumber;
    /**
    * 身份证号码
    */
    private String idCard;
    /**
    * 离职时间
    */
    private Date leaveDate;
    /**
    * 离职原因
    */
    private String leaveReason;
    /**
    * 拉黑时间
    */
    private Date blackDate;
    /**
    * 拉黑原因
    */
    private String blackReason;



    public StaffBlackEntity(){}
    /**
    * 获取 员工ID
    * @return Long
    */
    public Long getStaffId(){
        return staffId;
    }
    /**
    * 设置 员工ID
    * @param staffId
    */
    public void setStaffId(Long staffId){
        this.staffId = staffId;
    }
    /**
    * 获取 员工姓名
    * @return String
    */
    public String getStaffName(){
        return staffName;
    }
    /**
    * 设置 员工姓名
    * @param staffName
    */
    public void setStaffName(String staffName){
        this.staffName = staffName;
    }
    /**
    * 获取 联系电话
    * @return String
    */
    public String getPhoneNumber(){
        return phoneNumber;
    }
    /**
    * 设置 联系电话
    * @param phoneNumber
    */
    public void setPhoneNumber(String phoneNumber){
        this.phoneNumber = phoneNumber;
    }
    /**
    * 获取 身份证号码
    * @return String
    */
    public String getIdCard(){
        return idCard;
    }
    /**
    * 设置 身份证号码
    * @param idCard
    */
    public void setIdCard(String idCard){
        this.idCard = idCard;
    }
    /**
    * 获取 离职时间
    * @return Date
    */
    public Date getLeaveDate(){
        return leaveDate;
    }
    /**
    * 设置 离职时间
    * @param leaveDate
    */
    public void setLeaveDate(Date leaveDate){
        this.leaveDate = leaveDate;
    }
    /**
    * 获取 离职原因
    * @return String
    */
    public String getLeaveReason(){
        return leaveReason;
    }
    /**
    * 设置 离职原因
    * @param leaveReason
    */
    public void setLeaveReason(String leaveReason){
        this.leaveReason = leaveReason;
    }
    /**
    * 获取 拉黑时间
    * @return Date
    */
    public Date getBlackDate(){
        return blackDate;
    }
    /**
    * 设置 拉黑时间
    * @param blackDate
    */
    public void setBlackDate(Date blackDate){
        this.blackDate = blackDate;
    }
    /**
    * 获取 拉黑原因
    * @return String
    */
    public String getBlackReason(){
        return blackReason;
    }
    /**
    * 设置 拉黑原因
    * @param blackReason
    */
    public void setBlackReason(String blackReason){
        this.blackReason = blackReason;
    }




    @Override
    public int hashCode() {
         return this.getId().hashCode();
    }
    @Override
    public boolean equals(Object obj) {
        if (obj == null) return false;
        if (obj instanceof StaffBlackEntity) {
            StaffBlackEntity tmp = (StaffBlackEntity) obj;
            if (this.getId() == tmp.getId()) {
                 return true;
            }
        }
        return false;
    }

    public String toString(){
        StringBuilder sb = new StringBuilder("");
        sb.append(",staffId:").append(getStaffId());
        sb.append(",staffName:").append(getStaffName());
        sb.append(",phoneNumber:").append(getPhoneNumber());
        sb.append(",idCard:").append(getIdCard());
        sb.append(",leaveDate:").append(getLeaveDate());
        sb.append(",leaveReason:").append(getLeaveReason());
        sb.append(",blackDate:").append(getBlackDate());
        sb.append(",blackReason:").append(getBlackReason());
        return sb.toString();
    }

    public void initAttrValue(){

            this.staffId = null;

            this.staffName = "";

            this.phoneNumber = "";

            this.idCard = "";

            this.leaveDate = null;

            this.leaveReason = "";

            this.blackDate = null;

            this.blackReason = "";
    }
}