PackingListOrderBulkUpload.java
package com.tradecloud.domain.container;
import com.tradecloud.common.base.PersistenceBase;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;
import org.hibernate.annotations.ForeignKey;
import org.hibernate.annotations.NaturalId;
import javax.persistence.*;
import java.math.BigDecimal;
import java.util.LinkedHashSet;
import java.util.Set;
@Entity
@Table(name = "packinglistorderbulkupload")
@Access(AccessType.FIELD)
/*@NamedQueries({
@NamedQuery(name = "packingListOrder.findByIdWithItems", query = "from PackingListOrder plo left join fetch plo.items where plo.id=:id"),
@NamedQuery(name = "packingListOrder.findOrdersByReference", query = "from PackingListOrder plo where plo.orderReference = :orderReference"),
@NamedQuery(name = "packingListOrder.findOrdersByPackingListContainer", query = "from PackingListOrder plo " +
"where packingListContainerBulkUpload.id = :packingListContainerId"),
@NamedQuery(name = "packingListOrder.findByOrderAndPackingListContainer",
query = "from PackingListOrder where packingListContainerBulkUpload.id = :packingListContainerId and orderReference = "
+ "(select orderReference from Order where id = :orderId)") })*/
public class PackingListOrderBulkUpload extends PersistenceBase {
private static final long serialVersionUID = 1L;
private BigDecimal noOfCartons;
private String orderReference;
private String shippingReference;
/**
* The bidirectional link back to the parent {@link PackingListContainer}.
*/
@NaturalId
@ManyToOne(optional = false)
@ForeignKey(name = "fk_packinglistcontainerbulkupload")
private PackingListContainerBulkUpload packingListContainerBulkUpload;
@ForeignKey(name = "fk_packinglistorderbulkupload")
@OneToMany(cascade = CascadeType.ALL, mappedBy = "packingListOrderBulkUpload", orphanRemoval = true, fetch = FetchType.LAZY)
@Fetch(FetchMode.SUBSELECT)
@OrderBy("addedToOrderDate")
private Set<PackingListItemBulkUpload> items = new LinkedHashSet<PackingListItemBulkUpload>();
public PackingListOrderBulkUpload() {
}
public void addItem(PackingListItemBulkUpload item) {
item.setPackingListOrder(this);
items.add(item);
}
public String getOrderReference() {
return orderReference;
}
public void setOrderReference(String orderReference) {
this.orderReference = orderReference;
}
public PackingListContainerBulkUpload getPackingListContainerBulkUpload() {
return packingListContainerBulkUpload;
}
public void setPackingListContainerBulkUpload(PackingListContainerBulkUpload packingListContainerBulkUpload) {
this.packingListContainerBulkUpload = packingListContainerBulkUpload;
}
public Set<PackingListItemBulkUpload> getItems() {
return items;
}
public void setItems(Set<PackingListItemBulkUpload> items) {
this.items = items;
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (this == obj) {
return true;
}
if (!(obj instanceof PackingListOrderBulkUpload)) {
return false;
}
PackingListOrderBulkUpload other = (PackingListOrderBulkUpload) obj;
return new EqualsBuilder().append(packingListContainerBulkUpload, other.packingListContainerBulkUpload)
.append(orderReference, other.orderReference).isEquals();
}
@Override
public int hashCode() {
return new HashCodeBuilder().append(packingListContainerBulkUpload).append(orderReference).toHashCode();
}
public Long getKey() {
return (long) hashCode();
}
public String getShippingReference() {
return shippingReference;
}
public void setShippingReference(String shippingReference) {
this.shippingReference = shippingReference;
}
public BigDecimal getNoOfCartons() {
return noOfCartons;
}
public void setNoOfCartons(BigDecimal noOfCartons) {
this.noOfCartons = noOfCartons;
}
}