package com.mortals.xhx.module.care.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.care.model.vo.CareDoworkRecordsVo;
import lombok.Data;
/**
* 办理时间实体对象
*
* @author zxfei
* @date 2025-03-28
*/
@Data
public class CareDoworkRecordsEntity extends CareDoworkRecordsVo {
    private static final long serialVersionUID = 1L;

    /**
    * 站点Id
    */
    private Long siteId;
    /**
    * 站点名称
    */
    private String siteName;
    /**
    * 个人信息ID
    */
    private Long personId;
    /**
    * 办理号ID与等待号id一致
    */
    private Long doWorkId;
    /**
    * 姓名
    */
    private String name;
    /**
    * 联系方式
    */
    private String contact;
    /**
    * 身份证号码
    */
    private String idCard;
    /**
    * 业务Id
    */
    private Long bussinessId;
    /**
    * 预约业务
    */
    private String bussinessName;
    /**
    * 办理业务
    */
    private String service;
    /**
    * 排队编号
    */
    private String queueNo;
    /**
    * 排队开始时间
    */
    private Date takeTime;
    /**
    * 排队结束时间-业务办理开始时间
    */
    private Date callTime;
    /**
    * 办理结束时间
    */
    private Date endTime;
    /**
    * 最终办理时长，秒
    */
    private Integer waitTime;
    /**
    * 告警次数
    */
    private Integer careCount;
    /**
    * 短信发送次数
    */
    private Integer smsCount;
    /**
    * 评价
    */
    private String assessment;
    @Override
    public int hashCode() {
         return this.getId().hashCode();
    }
    @Override
    public boolean equals(Object obj) {
        if (obj == null) return false;
        if (obj instanceof CareDoworkRecordsEntity) {
            CareDoworkRecordsEntity tmp = (CareDoworkRecordsEntity) obj;
            if (this.getId() == tmp.getId()) {
                 return true;
            }
        }
        return false;
    }

    public void initAttrValue(){
            this.siteId = null;
            this.siteName = "";
            this.personId = null;
            this.doWorkId = null;
            this.name = "";
            this.contact = "";
            this.idCard = "";
            this.bussinessId = null;
            this.bussinessName = "";
            this.service = "";
            this.queueNo = "";
            this.takeTime = null;
            this.callTime = null;
            this.endTime = null;
            this.waitTime = 0;
            this.careCount = 0;
            this.smsCount = 0;
            this.assessment = "";
    }
}