RFQOrder.java
package com.tradecloud.domain.model.requestforquote;
import com.tradecloud.common.base.PersistenceBase;
import com.tradecloud.domain.supplier.OrganisationalUnitSupplier;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;
import javax.persistence.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@Entity
@Table(name = "RFQOrder")
public class RFQOrder extends PersistenceBase {
@ManyToOne
private OrganisationalUnitSupplier organisationalUnitSupplier;
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY,mappedBy = "rfqOrder")
@Fetch(value = FetchMode.SELECT)
@OrderBy("created")
private List<RFQOrderRegion> rfqOrderRegions =new ArrayList<>();
@ManyToOne(fetch = FetchType.LAZY)
private RequestForQuote requestForQuote;
public RFQOrder() {
}
public RFQOrder(OrganisationalUnitSupplier organisationalUnitSupplier, RequestForQuote requestForQuote) {
this.organisationalUnitSupplier = organisationalUnitSupplier;
this.requestForQuote=requestForQuote;
}
public OrganisationalUnitSupplier getOrganisationalUnitSupplier() {
return organisationalUnitSupplier;
}
public void setOrganisationalUnitSupplier(OrganisationalUnitSupplier organisationalUnitSupplier) {
this.organisationalUnitSupplier = organisationalUnitSupplier;
}
public List<RFQOrderRegion> getRfqOrderRegions() {
return rfqOrderRegions;
}
public void setRfqOrderRegions(List<RFQOrderRegion> rfqOrderRegions) {
this.rfqOrderRegions = rfqOrderRegions;
}
public RequestForQuote getRequestForQuote() {
return requestForQuote;
}
public void setRequestForQuote(RequestForQuote requestForQuote) {
this.requestForQuote = requestForQuote;
}
@Override
public boolean equals(Object object) {
if (this == object) return true;
if (object == null || getClass() != object.getClass()) return false;
RFQOrder rfqOrder = (RFQOrder) object;
return Objects.equals(organisationalUnitSupplier, rfqOrder.organisationalUnitSupplier) && Objects.equals(requestForQuote, rfqOrder.requestForQuote);
}
@Override
public int hashCode() {
return Objects.hash(organisationalUnitSupplier, requestForQuote);
}
}