package com.yxproject.start.entity;

import javax.persistence.*;
import java.sql.Time;
import java.util.Date;
import java.util.Objects;

/**
 * Created by zhangyusheng on 2018/11/16 10:51
 */
@Entity
@Table(name = "TASK", schema = "DAHAI")
public class TaskEntity {
    private long task_Id;
    private long card_Type;
    private long old_Card_Type;
    private String citycode;
    private Date submit_Date;
    private Date issued_Date;
    private long print_State;
    private Date download_Date;
    private Date print_Out_Date;
    private Date position_Date;
    private Date out_Workshop_Date;
    private String quality_People_Name;
    private Date quality_Test_Date;
    private String exception_Information;
    private Date out_Storage_Date;
    private Date in_Storage_Date;
    private long task_State_Id;
    private long is_Exception;
    private long printer_Id;



    @Id
    @Column(name = "TASK_ID", nullable = false, precision = 0)
    public long getTask_Id() {
        return task_Id;
    }

    public void setTask_Id(long task_Id) {
        this.task_Id = task_Id;
    }

    @Basic
    @Column(name = "CARD_TYPE", nullable = false, precision = 0)
    public long getCard_Type() {
        return card_Type;
    }

    public void setCard_Type(long card_Type) {
        this.card_Type = card_Type;
    }
    @Basic
    @Column(name = "OLD_CARD_TYPE", nullable = false, precision = 0)
    public long getOld_Card_Type() {
        return old_Card_Type;
    }

    public void setOld_Card_Type(long old_Card_Type) {
        this.old_Card_Type = old_Card_Type;
    }
    @Basic
    @Column(name = "CITYCODE", nullable = true, length = 20)
    public String getCitycode() {
        return citycode;
    }

    public void setCitycode(String citycode) {
        this.citycode = citycode;
    }

    @Basic
    @Column(name = "SUBMIT_DATE", nullable = true)
    public Date getSubmit_Date() {
        return submit_Date;
    }

    public void setSubmit_Date(Date submit_Date) {
        this.submit_Date = submit_Date;
    }
    @Basic
    @Column(name = "ISSUED_DATE", nullable = true)
    public Date getIssued_Date() {
        return issued_Date;
    }

    public void setIssued_Date(Date issued_Date) {
        this.issued_Date = issued_Date;
    }

    @Basic
    @Column(name = "PRINT_STATE", nullable = true, precision = 0)
    public long getPrint_State() {
        return print_State;
    }

    public void setPrint_State(long print_State) {
        this.print_State = print_State;
    }

    @Basic
    @Column(name = "DOWNLOAD_DATE", nullable = true)
    public Date getDownload_Date() {
        return download_Date;
    }

    public void setDownload_Date(Date download_Date) {
        this.download_Date = download_Date;
    }
    @Basic
    @Column(name = "PRINT_OUT_DATE", nullable = true)
    public Date getPrint_Out_Date() {
        return print_Out_Date;
    }

    public void setPrint_Out_Date(Date print_Out_Date) {
        this.print_Out_Date = print_Out_Date;
    }

    @Basic
    @Column(name = "POSITION_DATE", nullable = true)
    public Date getPosition_Date() {
        return position_Date;
    }

    public void setPosition_Date(Date position_Date) {
        this.position_Date = position_Date;
    }
    @Basic
    @Column(name = "OUT_WORKSHOP_DATE", nullable = true)
    public Date getOut_Workshop_Date() {
        return out_Workshop_Date;
    }

    public void setOut_Workshop_Date(Date out_Workshop_Date) {
        this.out_Workshop_Date = out_Workshop_Date;
    }


    @Basic
    @Column(name = "QUALITY_PEOPLE_NAME", nullable = true, length = 20)
    public String getQuality_People_Name() {
        return quality_People_Name;
    }

    public void setQuality_People_Name(String quality_People_Name) {
        this.quality_People_Name = quality_People_Name;
    }
    @Basic
    @Column(name = "QUALITY_TEST_DATE", nullable = true)
    public Date getQuality_Test_Date() {
        return quality_Test_Date;
    }

    public void setQuality_Test_Date(Date quality_Test_Date) {
        this.quality_Test_Date = quality_Test_Date;
    }


    @Basic
    @Column(name = "EXCEPTION_INFORMATION", nullable = true, length = 120)
    public String getException_Information() {
        return exception_Information;
    }

    public void setException_Information(String exception_Information) {
        this.exception_Information = exception_Information;
    }
    @Basic
    @Column(name = "OUT_STORAGE_DATE", nullable = true)
    public Date getOut_Storage_Date() {
        return out_Storage_Date;
    }

    public void setOut_Storage_Date(Date out_Storage_Date) {
        this.out_Storage_Date = out_Storage_Date;
    }

    @Basic
    @Column(name = "IN_STORAGE_DATE", nullable = true)
    public Date getIn_Storage_Date() {
        return in_Storage_Date;
    }

    public void setIn_Storage_Date(Date in_Storage_Date) {
        this.in_Storage_Date = in_Storage_Date;
    }

    @Basic
    @Column(name = "TASK_STATE_ID", nullable = true, precision = 0)
    public long getTask_State_Id() {
        return task_State_Id;
    }

    public void setTask_State_Id(long task_State_Id) {
        this.task_State_Id = task_State_Id;
    }
    @Basic
    @Column(name = "IS_EXCEPTION", nullable = true, precision = 0)
    public long getIs_Exception() {
        return is_Exception;
    }

    public void setIs_Exception(long is_Exception) {
        this.is_Exception = is_Exception;
    }
    @Basic
    @Column(name = "PRINTER_ID", nullable = true, precision = 0)
    public long getPrinter_Id() {
        return printer_Id;
    }

    public void setPrinter_Id(long printer_Id) {
        this.printer_Id = printer_Id;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        TaskEntity that = (TaskEntity) o;
        return task_Id == that.task_Id &&
                card_Type == that.card_Type &&
                old_Card_Type == that.old_Card_Type &&
                Objects.equals(citycode, that.citycode) &&
                Objects.equals(submit_Date, that.submit_Date) &&
                Objects.equals(issued_Date, that.issued_Date) &&
                Objects.equals(print_State, that.print_State) &&
                Objects.equals(download_Date, that.download_Date) &&
                Objects.equals(print_Out_Date, that.print_Out_Date) &&
                Objects.equals(position_Date, that.position_Date) &&
                Objects.equals(out_Workshop_Date, that.out_Workshop_Date) &&
                Objects.equals(quality_People_Name, that.quality_People_Name) &&
                Objects.equals(quality_Test_Date, that.quality_Test_Date) &&
                Objects.equals(exception_Information, that.exception_Information) &&
                Objects.equals(out_Storage_Date, that.out_Storage_Date) &&
                Objects.equals(in_Storage_Date, that.in_Storage_Date) &&
                printer_Id == that.printer_Id &&
                task_State_Id == that.task_State_Id &&
                Objects.equals(is_Exception, that.is_Exception);
    }

    @Override
    public int hashCode() {
        return Objects.hash(task_Id, card_Type, old_Card_Type, citycode, submit_Date, issued_Date, print_State, download_Date, print_Out_Date, position_Date, out_Workshop_Date, quality_People_Name, quality_Test_Date, exception_Information,out_Storage_Date,in_Storage_Date,printer_Id,task_State_Id,is_Exception);
    }
}
