package com.tax.file.model;

import com.yxcheng.token.utils.DateUtils;
import lombok.ToString;

import java.util.Date;

@ToString
public class LackDateFile implements Comparable<LackDateFile> {
    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column lack_date_file.id
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    private Integer id;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column lack_date_file.taxno
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    private String taxno;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column lack_date_file.inv_date_start
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    private Date invDateStart;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column lack_date_file.inv_date_end
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    private Date invDateEnd;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column lack_date_file.create_date
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    private Date createDate;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column lack_date_file.apply_status
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    private String applyStatus;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column lack_date_file.inv_spec
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    private String invSpec;

    private Date updateDate;

    private Date applyDate;
    private String applyFlag;

    private String invMonth;

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column lack_date_file.id
     *
     * @return the value of lack_date_file.id
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public Integer getId() {
        return id;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column lack_date_file.id
     *
     * @param id the value for lack_date_file.id
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column lack_date_file.taxno
     *
     * @return the value of lack_date_file.taxno
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public String getTaxno() {
        return taxno;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column lack_date_file.taxno
     *
     * @param taxno the value for lack_date_file.taxno
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public void setTaxno(String taxno) {
        this.taxno = taxno;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column lack_date_file.inv_date_start
     *
     * @return the value of lack_date_file.inv_date_start
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public Date getInvDateStart() {
        return invDateStart;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column lack_date_file.inv_date_start
     *
     * @param invDateStart the value for lack_date_file.inv_date_start
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public void setInvDateStart(Date invDateStart) {
        this.invDateStart = invDateStart;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column lack_date_file.inv_date_end
     *
     * @return the value of lack_date_file.inv_date_end
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public Date getInvDateEnd() {
        return invDateEnd;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column lack_date_file.inv_date_end
     *
     * @param invDateEnd the value for lack_date_file.inv_date_end
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public void setInvDateEnd(Date invDateEnd) {
        this.invDateEnd = invDateEnd;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column lack_date_file.create_date
     *
     * @return the value of lack_date_file.create_date
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public Date getCreateDate() {
        return createDate;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column lack_date_file.create_date
     *
     * @param createDate the value for lack_date_file.create_date
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column lack_date_file.apply_status
     *
     * @return the value of lack_date_file.apply_status
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public String getApplyStatus() {
        return applyStatus;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column lack_date_file.apply_status
     *
     * @param applyStatus the value for lack_date_file.apply_status
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public void setApplyStatus(String applyStatus) {
        this.applyStatus = applyStatus;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column lack_date_file.inv_spec
     *
     * @return the value of lack_date_file.inv_spec
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public String getInvSpec() {
        return invSpec;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column lack_date_file.inv_spec
     *
     * @param invSpec the value for lack_date_file.inv_spec
     *
     * @mbggenerated Wed Mar 04 09:47:53 CST 2020
     */
    public void setInvSpec(String invSpec) {
        this.invSpec = invSpec;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    public Date getApplyDate() {
        return applyDate;
    }

    public void setApplyDate(Date applyDate) {
        this.applyDate = applyDate;
    }

    public String getApplyFlag() {
        return applyFlag;
    }

    public void setApplyFlag(String applyFlag) {
        this.applyFlag = applyFlag;
    }

    public String getInvMonth() {
        return invMonth;
    }

    public void setInvMonth(String invMonth) {
        this.invMonth = invMonth;
    }

    @Override
    public int compareTo(LackDateFile lackDateFile) {
        return DateUtils.dateCompare(lackDateFile.getInvDateStart(), this.invDateStart);
    }
}