FECSearchDTO.java

package com.tradecloud.dto.treasury;

import com.tradecloud.domain.base.utils.DateRange;
import com.tradecloud.domain.common.Currency;
import com.tradecloud.domain.dto.base.SearchBase;
import com.tradecloud.domain.model.LinkedType;
import com.tradecloud.domain.model.fec.FECStatusType;
import com.tradecloud.domain.model.fec.FECTransactionType;
import com.tradecloud.domain.model.fec.SortBy;

import java.io.Serializable;

/**
 * Created by ds on 10/16/14.
 */
public class FECSearchDTO  extends SearchBase implements Serializable {

    private DateRange dealDate= new DateRange();
    private DefaultDTO treasuryBank;
    private String dealer;
    private String bankReference;
    private String internalReference;
    private DefaultDTO organisationalUnit;
    private DefaultDTO forexGroup;
    private DateRange maturityDate= new DateRange();
    private FECStatusType status;
    private Currency currency;
    private LinkedType linked;
    private SortBy sortBy;
    private  boolean includeMaturedFec;
    private FECTransactionType fecTransactionType;
    private boolean selectAll;
    private String parentFecId;

    @Override
    public String getTableName() {
        return null;
    }

    public DateRange getDealDate() {
        return dealDate;
    }

    public void setDealDate(DateRange dealDate) {
        this.dealDate = dealDate;
    }

    public DefaultDTO getTreasuryBank() {
        return treasuryBank;
    }

    public void setTreasuryBank(DefaultDTO treasuryBank) {
        this.treasuryBank = treasuryBank;
    }

    public String getDealer() {
        return dealer;
    }

    public void setDealer(String dealer) {
        this.dealer = dealer;
    }

    public String getBankReference() {
        return bankReference;
    }

    public void setBankReference(String bankReference) {
        this.bankReference = bankReference;
    }

    public String getInternalReference() {
        return internalReference;
    }

    public void setInternalReference(String internalReference) {
        this.internalReference = internalReference;
    }

    public DefaultDTO getOrganisationalUnit() {
        return organisationalUnit;
    }

    public void setOrganisationalUnit(DefaultDTO organisationalUnit) {
        this.organisationalUnit = organisationalUnit;
    }

    public DefaultDTO getForexGroup() {
        return forexGroup;
    }

    public void setForexGroup(DefaultDTO forexGroup) {
        this.forexGroup = forexGroup;
    }

    public DateRange getMaturityDate() {
        return maturityDate;
    }

    public void setMaturityDate(DateRange maturityDate) {
        this.maturityDate = maturityDate;
    }

    public FECStatusType getStatus() {
        return status;
    }

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

    public Currency getCurrency() {
        return currency;
    }

    public void setCurrency(Currency currency) {
        this.currency = currency;
    }

    public LinkedType getLinked() {
        return linked;
    }

    public void setLinked(LinkedType linked) {
        this.linked = linked;
    }

    public SortBy getSortBy() {
        return sortBy;
    }

    public void setSortBy(SortBy sortBy) {
        this.sortBy = sortBy;
    }

    public boolean isIncludeMaturedFec() {
        return includeMaturedFec;
    }

    public void setIncludeMaturedFec(boolean includeMaturedFec) {
        this.includeMaturedFec = includeMaturedFec;
    }

    public FECTransactionType getFecTransactionType() {
        return fecTransactionType;
    }

    public void setFecTransactionType(FECTransactionType fecTransactionType) {
        this.fecTransactionType = fecTransactionType;
    }

    public boolean isSelectAll() {
        return selectAll;
    }

    public void setSelectAll(boolean selectAll) {
        this.selectAll = selectAll;
    }

    public String getParentFecId() {
        return parentFecId;
    }

    public void setParentFecId(String parentFecId) {
        this.parentFecId = parentFecId;
    }

    @Override
    public boolean equals(Object o) {

        if (this == o) return true;
        if (!(o instanceof FECSearchDTO)) return false;

        FECSearchDTO that = (FECSearchDTO) o;

        if (includeMaturedFec != that.includeMaturedFec) return false;
        if (treasuryBank != null ? !treasuryBank.equals(that.treasuryBank) : that.treasuryBank != null) return false;
        if (bankReference != null ? !bankReference.equals(that.bankReference) : that.bankReference != null) return false;
        if (currency != null ? !currency.equals(that.currency) : that.currency != null) return false;
        if (dealDate != null ? !dealDate.equals(that.dealDate) : that.dealDate != null) return false;
        if (dealer != null ? !dealer.equals(that.dealer) : that.dealer != null) return false;
        if (forexGroup != null ? !forexGroup.equals(that.forexGroup) : that.forexGroup != null) return false;
        if (internalReference != null ? !internalReference.equals(that.internalReference) : that.internalReference != null) return false;
        if (linked != null ? !linked.equals(that.linked) : that.linked != null) return false;
        if (maturityDate != null ? !maturityDate.equals(that.maturityDate) : that.maturityDate != null) return false;
        if (organisationalUnit != null ? !organisationalUnit.equals(that.organisationalUnit) : that.organisationalUnit != null) return false;
        if (sortBy != that.sortBy) return false;
        if (status != that.status) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = dealDate != null ? dealDate.hashCode() : 0;
        result = 31 * result + (treasuryBank != null ? treasuryBank.hashCode() : 0);
        result = 31 * result + (dealer != null ? dealer.hashCode() : 0);
        result = 31 * result + (bankReference != null ? bankReference.hashCode() : 0);
        result = 31 * result + (internalReference != null ? internalReference.hashCode() : 0);
        result = 31 * result + (organisationalUnit != null ? organisationalUnit.hashCode() : 0);
        result = 31 * result + (forexGroup != null ? forexGroup.hashCode() : 0);
        result = 31 * result + (maturityDate != null ? maturityDate.hashCode() : 0);
        result = 31 * result + (status != null ? status.hashCode() : 0);
        result = 31 * result + (currency != null ? currency.hashCode() : 0);
        result = 31 * result + (linked != null ? linked.hashCode() : 0);
        result = 31 * result + (sortBy != null ? sortBy.hashCode() : 0);
        result = 31 * result + (includeMaturedFec ? 1 : 0);
        return result;
    }

    @Override
    public String toString() {
        return "FECSearchDTO{" +
                "dealDate=" + dealDate +
                ", treasuryBank='" + treasuryBank + '\'' +
                ", dealer='" + dealer + '\'' +
                ", bankReference='" + bankReference + '\'' +
                ", internalReference='" + internalReference + '\'' +
                ", organisationalUnit=" + organisationalUnit +
                ", forexGroup=" + forexGroup +
                ", maturityDate=" + maturityDate +
                ", status=" + status +
                ", currency=" + currency +
                ", linked='" + linked + '\'' +
                ", sortBy=" + sortBy +
                ", includeMaturedFec=" + includeMaturedFec +
                ", fecTransactionType=" + fecTransactionType +
                '}';
    }
}