package com.bailuntec.domain.entity;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;

@Data
public class DcBaseFinanceEbay {
    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.id
     *
     * @mbg.generated
     */
    private Integer id;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.bj_create
     *
     * @mbg.generated
     */
    private LocalDateTime bjCreate;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.bj_modified
     *
     * @mbg.generated
     */
    private LocalDateTime bjModified;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.account_entry_type
     *
     * @mbg.generated
     */
    private String accountEntryType;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.description
     *
     * @mbg.generated
     */
    private String description;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.gmt_date
     *
     * @mbg.generated
     */
    private LocalDateTime gmtDate;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.bj_date
     *
     * @mbg.generated
     */
    private LocalDateTime bjDate;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.gross_amount
     *
     * @mbg.generated
     */
    private BigDecimal grossAmount;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.item_id
     *
     * @mbg.generated
     */
    private String itemId;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.memo
     *
     * @mbg.generated
     */
    private String memo;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.net_amount
     *
     * @mbg.generated
     */
    private BigDecimal netAmount;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.ref_number
     *
     * @mbg.generated
     */
    private String refNumber;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.vat_percent
     *
     * @mbg.generated
     */
    private BigDecimal vatPercent;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.title
     *
     * @mbg.generated
     */
    private String title;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.order_line_id
     *
     * @mbg.generated
     */
    private String orderLineId;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.transaction_id
     *
     * @mbg.generated
     */
    private String transactionId;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.company_id
     *
     * @mbg.generated
     */
    private Integer companyId;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.received_top_rated_discount
     *
     * @mbg.generated
     */
    private Boolean receivedTopRatedDiscount;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.account_id
     *
     * @mbg.generated
     */
    private Integer accountId;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.currency
     *
     * @mbg.generated
     */
    private String currency;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.exchange_rate
     *
     * @mbg.generated
     */
    private BigDecimal exchangeRate;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.exchange_rate_usd
     *
     * @mbg.generated
     */
    private BigDecimal exchangeRateUsd;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_finance_ebay.report_date
     *
     * @mbg.generated
     */
    private Date reportDate;

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_finance_ebay
     *
     * @mbg.generated
     */
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", bjCreate=").append(bjCreate);
        sb.append(", bjModified=").append(bjModified);
        sb.append(", accountEntryType=").append(accountEntryType);
        sb.append(", description=").append(description);
        sb.append(", gmtDate=").append(gmtDate);
        sb.append(", bjDate=").append(bjDate);
        sb.append(", grossAmount=").append(grossAmount);
        sb.append(", itemId=").append(itemId);
        sb.append(", memo=").append(memo);
        sb.append(", netAmount=").append(netAmount);
        sb.append(", refNumber=").append(refNumber);
        sb.append(", vatPercent=").append(vatPercent);
        sb.append(", title=").append(title);
        sb.append(", orderLineId=").append(orderLineId);
        sb.append(", transactionId=").append(transactionId);
        sb.append(", companyId=").append(companyId);
        sb.append(", receivedTopRatedDiscount=").append(receivedTopRatedDiscount);
        sb.append(", accountId=").append(accountId);
        sb.append(", currency=").append(currency);
        sb.append(", exchangeRate=").append(exchangeRate);
        sb.append(", exchangeRateUsd=").append(exchangeRateUsd);
        sb.append(", reportDate=").append(reportDate);
        sb.append("]");
        return sb.toString();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_finance_ebay
     *
     * @mbg.generated
     */
    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        DcBaseFinanceEbay other = (DcBaseFinanceEbay) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getBjCreate() == null ? other.getBjCreate() == null : this.getBjCreate().equals(other.getBjCreate()))
            && (this.getBjModified() == null ? other.getBjModified() == null : this.getBjModified().equals(other.getBjModified()))
            && (this.getAccountEntryType() == null ? other.getAccountEntryType() == null : this.getAccountEntryType().equals(other.getAccountEntryType()))
            && (this.getDescription() == null ? other.getDescription() == null : this.getDescription().equals(other.getDescription()))
            && (this.getGmtDate() == null ? other.getGmtDate() == null : this.getGmtDate().equals(other.getGmtDate()))
            && (this.getBjDate() == null ? other.getBjDate() == null : this.getBjDate().equals(other.getBjDate()))
            && (this.getGrossAmount() == null ? other.getGrossAmount() == null : this.getGrossAmount().equals(other.getGrossAmount()))
            && (this.getItemId() == null ? other.getItemId() == null : this.getItemId().equals(other.getItemId()))
            && (this.getMemo() == null ? other.getMemo() == null : this.getMemo().equals(other.getMemo()))
            && (this.getNetAmount() == null ? other.getNetAmount() == null : this.getNetAmount().equals(other.getNetAmount()))
            && (this.getRefNumber() == null ? other.getRefNumber() == null : this.getRefNumber().equals(other.getRefNumber()))
            && (this.getVatPercent() == null ? other.getVatPercent() == null : this.getVatPercent().equals(other.getVatPercent()))
            && (this.getTitle() == null ? other.getTitle() == null : this.getTitle().equals(other.getTitle()))
            && (this.getOrderLineId() == null ? other.getOrderLineId() == null : this.getOrderLineId().equals(other.getOrderLineId()))
            && (this.getTransactionId() == null ? other.getTransactionId() == null : this.getTransactionId().equals(other.getTransactionId()))
            && (this.getCompanyId() == null ? other.getCompanyId() == null : this.getCompanyId().equals(other.getCompanyId()))
            && (this.getReceivedTopRatedDiscount() == null ? other.getReceivedTopRatedDiscount() == null : this.getReceivedTopRatedDiscount().equals(other.getReceivedTopRatedDiscount()))
            && (this.getAccountId() == null ? other.getAccountId() == null : this.getAccountId().equals(other.getAccountId()))
            && (this.getCurrency() == null ? other.getCurrency() == null : this.getCurrency().equals(other.getCurrency()))
            && (this.getExchangeRate() == null ? other.getExchangeRate() == null : this.getExchangeRate().equals(other.getExchangeRate()))
            && (this.getExchangeRateUsd() == null ? other.getExchangeRateUsd() == null : this.getExchangeRateUsd().equals(other.getExchangeRateUsd()))
            && (this.getReportDate() == null ? other.getReportDate() == null : this.getReportDate().equals(other.getReportDate()));
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_finance_ebay
     *
     * @mbg.generated
     */
    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getBjCreate() == null) ? 0 : getBjCreate().hashCode());
        result = prime * result + ((getBjModified() == null) ? 0 : getBjModified().hashCode());
        result = prime * result + ((getAccountEntryType() == null) ? 0 : getAccountEntryType().hashCode());
        result = prime * result + ((getDescription() == null) ? 0 : getDescription().hashCode());
        result = prime * result + ((getGmtDate() == null) ? 0 : getGmtDate().hashCode());
        result = prime * result + ((getBjDate() == null) ? 0 : getBjDate().hashCode());
        result = prime * result + ((getGrossAmount() == null) ? 0 : getGrossAmount().hashCode());
        result = prime * result + ((getItemId() == null) ? 0 : getItemId().hashCode());
        result = prime * result + ((getMemo() == null) ? 0 : getMemo().hashCode());
        result = prime * result + ((getNetAmount() == null) ? 0 : getNetAmount().hashCode());
        result = prime * result + ((getRefNumber() == null) ? 0 : getRefNumber().hashCode());
        result = prime * result + ((getVatPercent() == null) ? 0 : getVatPercent().hashCode());
        result = prime * result + ((getTitle() == null) ? 0 : getTitle().hashCode());
        result = prime * result + ((getOrderLineId() == null) ? 0 : getOrderLineId().hashCode());
        result = prime * result + ((getTransactionId() == null) ? 0 : getTransactionId().hashCode());
        result = prime * result + ((getCompanyId() == null) ? 0 : getCompanyId().hashCode());
        result = prime * result + ((getReceivedTopRatedDiscount() == null) ? 0 : getReceivedTopRatedDiscount().hashCode());
        result = prime * result + ((getAccountId() == null) ? 0 : getAccountId().hashCode());
        result = prime * result + ((getCurrency() == null) ? 0 : getCurrency().hashCode());
        result = prime * result + ((getExchangeRate() == null) ? 0 : getExchangeRate().hashCode());
        result = prime * result + ((getExchangeRateUsd() == null) ? 0 : getExchangeRateUsd().hashCode());
        result = prime * result + ((getReportDate() == null) ? 0 : getReportDate().hashCode());
        return result;
    }
}