package com.sifang.modules.taskdispatch.entity;

import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;
import java.util.Objects;

@Entity
@Table(name = "crm_prior_review_setting")
public class CrmPriorReviewSetting implements Serializable {
    @Id
    @GeneratedValue(generator = "idGenerator")
    @GenericGenerator(name = "idGenerator", strategy = "uuid")
    private String id;

    private String traderId;

    private String status;

    private String creator;

    private String createBy;

    private Date createTime;

    private Date finallyUpdateTime;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getTraderId() {
        return traderId;
    }

    public void setTraderId(String traderId) {
        this.traderId = traderId;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getCreator() {
        return creator;
    }

    public void setCreator(String creator) {
        this.creator = creator;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getFinallyUpdateTime() {
        return finallyUpdateTime;
    }

    public void setFinallyUpdateTime(Date finallyUpdateTime) {
        this.finallyUpdateTime = finallyUpdateTime;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        CrmPriorReviewSetting that = (CrmPriorReviewSetting) o;
        return Objects.equals(id, that.id) && Objects.equals(traderId, that.traderId) && Objects.equals(status, that.status) && Objects.equals(creator, that.creator) && Objects.equals(createBy, that.createBy) && Objects.equals(createTime, that.createTime) && Objects.equals(finallyUpdateTime, that.finallyUpdateTime);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, traderId, status, creator, createBy, createTime, finallyUpdateTime);
    }
}
