GoodsReceivedReceiptItem.java
package com.tradecloud.domain.model.goodsreceivedreceipt;
import com.tradecloud.common.base.PersistenceBase;
import com.tradecloud.domain.common.Currency;
import com.tradecloud.domain.item.PackageType;
import com.tradecloud.domain.item.VolumeUnitOfMeasure;
import com.tradecloud.domain.item.WeightUnitOfMeasure;
import com.tradecloud.domain.model.organisationalunit.OrganisationalUnit;
import com.tradecloud.domain.place.Country;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import javax.persistence.*;
import java.math.BigDecimal;
@Entity
@Table(name = "GoodsReceivedReceiptItem")
@Access(AccessType.FIELD)
public class GoodsReceivedReceiptItem extends PersistenceBase {
private String reference;
@ManyToOne(fetch = FetchType.LAZY)
private OrganisationalUnit organisationalUnit;
private String description;
private BigDecimal unitPerPackageUnit;
private BigDecimal unitVolume;
private BigDecimal unitWeight;
private BigDecimal quantity;
private BigDecimal unitPrice;
private BigDecimal localUnitCost;
private Integer lineNumber;
@ManyToOne
private PackageType packageUnit;
@ManyToOne
private Country country;
@ManyToOne
protected Currency unitPriceCurrency;
@ManyToOne
protected Currency localUnitCostCurrency;
@ManyToOne
protected WeightUnitOfMeasure weightUOM;
@ManyToOne
protected VolumeUnitOfMeasure volumeUOM;
private Long itemId;
public GoodsReceivedReceiptItem() {
}
public GoodsReceivedReceiptItem(String reference, OrganisationalUnit organisationalUnit, String description, Country country, Long itemId) {
new GoodsReceivedReceiptItem(reference, organisationalUnit, description, country, itemId, null);
}
public GoodsReceivedReceiptItem(String reference, OrganisationalUnit organisationalUnit, String description, Country country, Long itemId,
Integer lineNumber) {
this.reference = reference;
this.organisationalUnit = organisationalUnit;
this.description = description;
this.country = country;
this.itemId = itemId;
this.lineNumber = lineNumber;
}
public String getReference() {
return reference;
}
public void setReference(String reference) {
this.reference = reference;
}
public OrganisationalUnit getOrganisationalUnit() {
return organisationalUnit;
}
public void setOrganisationalUnit(OrganisationalUnit organisationalUnit) {
this.organisationalUnit = organisationalUnit;
}
public Country getCountry() {
return country;
}
public void setCountry(Country country) {
this.country = country;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public BigDecimal getUnitPerPackageUnit() {
return unitPerPackageUnit;
}
public void setUnitPerPackageUnit(BigDecimal unitPerPackageUnit) {
this.unitPerPackageUnit = unitPerPackageUnit;
}
public BigDecimal getUnitVolume() {
return unitVolume;
}
public void setUnitVolume(BigDecimal unitVolume) {
this.unitVolume = unitVolume;
}
public BigDecimal getUnitWeight() {
return unitWeight;
}
public void setUnitWeight(BigDecimal unitWeight) {
this.unitWeight = unitWeight;
}
public BigDecimal getQuantity() {
return quantity;
}
public void setQuantity(BigDecimal quantity) {
this.quantity = quantity;
}
public BigDecimal getUnitPrice() {
return unitPrice;
}
public void setUnitPrice(BigDecimal unitPrice) {
this.unitPrice = unitPrice;
}
public BigDecimal getLocalUnitCost() {
return localUnitCost;
}
public void setLocalUnitCost(BigDecimal localUnitCost) {
this.localUnitCost = localUnitCost;
}
public PackageType getPackageUnit() {
return packageUnit;
}
public void setPackageUnit(PackageType packageUnit) {
this.packageUnit = packageUnit;
}
public Currency getUnitPriceCurrency() {
return unitPriceCurrency;
}
public void setUnitPriceCurrency(Currency unitPriceCurrency) {
this.unitPriceCurrency = unitPriceCurrency;
}
public Currency getLocalUnitCostCurrency() {
return localUnitCostCurrency;
}
public void setLocalUnitCostCurrency(Currency localUnitCostCurrency) {
this.localUnitCostCurrency = localUnitCostCurrency;
}
public WeightUnitOfMeasure getWeightUOM() {
return weightUOM;
}
public void setWeightUOM(WeightUnitOfMeasure weightUOM) {
this.weightUOM = weightUOM;
}
public VolumeUnitOfMeasure getVolumeUOM() {
return volumeUOM;
}
public void setVolumeUOM(VolumeUnitOfMeasure volumeUOM) {
this.volumeUOM = volumeUOM;
}
public Long getItemId() {
return itemId;
}
public Integer getLineNumber() {
return lineNumber;
}
public void setLineNumber(Integer lineNumber) {
this.lineNumber = lineNumber;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
GoodsReceivedReceiptItem that = (GoodsReceivedReceiptItem) o;
return new EqualsBuilder().append(reference, that.reference).append(organisationalUnit, that.organisationalUnit)
.append(country, that.country).append(itemId, that.itemId).isEquals();
}
@Override
public int hashCode() {
return new HashCodeBuilder().append(reference).append(organisationalUnit).append(country).append(itemId).toHashCode();
}
}