ElcConfig.java
package com.tradecloud.domain.model.elcordermanagement;
import com.tradecloud.common.base.PersistenceBase;
import com.tradecloud.domain.common.Currency;
import com.tradecloud.domain.common.Incoterm;
import com.tradecloud.domain.container.ContainerType;
import com.tradecloud.domain.item.Product;
import com.tradecloud.domain.model.organisationalunit.OrganisationalUnit;
import com.tradecloud.domain.model.shipment.ShippingMode;
import com.tradecloud.domain.party.Employee;
import com.tradecloud.domain.party.ServiceProvider;
import com.tradecloud.domain.place.FinalDestination;
import com.tradecloud.domain.place.PlaceOfDischarge;
import javax.persistence.*;
import javax.xml.bind.annotation.*;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;
@Entity
@DiscriminatorValue("ELC_CONFIG")
@Access(AccessType.FIELD)
@Table(name = "elcconfig")
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "ElcConfig")
public class ElcConfig extends PersistenceBase {
@ManyToOne(fetch = FetchType.EAGER)
private ContainerType containerType;
@ManyToOne(fetch = FetchType.EAGER)
private PlaceOfDischarge placeOfDischarge;
@ManyToOne(fetch = FetchType.EAGER)
private FinalDestination finalDestination;
@Enumerated(value = EnumType.STRING)
private ShippingMode shippingMode;
@ManyToOne
private Incoterm incoterm;
@ManyToOne
private Currency currency;
@XmlElement
private BigDecimal financeInsuranceRate;
@XmlElement
private BigDecimal financeCollectionRate;
@XmlElement
private BigDecimal financeCollectionMin;
@XmlElement
private BigDecimal financeLCRate;
@XmlElement
private BigDecimal financeLCAdditionalValue;
@XmlElement
private BigDecimal financeLCMin;
@XmlElement
private BigDecimal financeOpenAccountValue;
@XmlElement
private BigDecimal financeOpenAccountRate;
@XmlElement
private BigDecimal financeOpenAccountMin;
@XmlElement
private BigDecimal financeOpenAccountMax;
@XmlElement
private BigDecimal warehousingRate;
@XmlElement
private boolean calculationOrFlatValue = false;
@XmlElement
private boolean supplierInvoicePercentage = false;
@XmlElement
private boolean packageDimensionMandatory;
@XmlElement
private BigDecimal woodenHangerDuty;
@XmlElement
private BigDecimal recyclablePlasticHangerDuty;
@XmlElement
private BigDecimal nonRecyclablePlasticHangerDuty;
private boolean allowReportFormatOption;
@Enumerated(value = EnumType.STRING)
@XmlAttribute
private ElcReports elcReportConfig;
private boolean editSupplierCurrency;
private boolean elcUsingProduct;
@ManyToOne
@XmlElement(name = "Buyer")
private Employee buyer;
@ManyToOne
@XmlElement(name = "organisationalUnit")
private OrganisationalUnit organisationalUnit;
private boolean autoFinalise;
private boolean autoSignOff;
private boolean autoCalculateContainer;
private boolean calculatePlannedSettlementDate;
private boolean costOnUpdate;
private boolean overridePlannedSettlementSpotRate;
private boolean manualTariffing;
@ManyToOne
@XmlElement(name = "defaultProductTemplate")
private Product defaultProductTemplate;
/**
* The freight forwarder used by this supplier.
*/
@XmlElement(name = "FreightForwarder")
@ManyToOne(fetch = FetchType.EAGER)
private ServiceProvider freightForwarder;
/**
* The agent who will be responsible for clearing this supplier's goods.
*/
@XmlElement(name = "ClearingAgent")
@ManyToOne(fetch = FetchType.EAGER)
private ServiceProvider clearingAgent;
@XmlTransient
@ElementCollection
@JoinTable(name = "elcconfig_containerCost",
joinColumns = {@JoinColumn(name = "elcconfig_id", referencedColumnName = "id")})
@MapKeyJoinColumn(name = "containertype_code")
@Column(name = "cost")
private Map<ContainerType, BigDecimal> containerCostMap = new HashMap();
public ContainerType getContainerType() {
return containerType;
}
public void setContainerType(ContainerType containerType) {
this.containerType = containerType;
}
public PlaceOfDischarge getPlaceOfDischarge() {
return placeOfDischarge;
}
public void setPlaceOfDischarge(PlaceOfDischarge placeOfDischarge) {
this.placeOfDischarge = placeOfDischarge;
}
public FinalDestination getFinalDestination() {
return finalDestination;
}
public void setFinalDestination(FinalDestination finalDestination) {
this.finalDestination = finalDestination;
}
public ShippingMode getShippingMode() {
return shippingMode;
}
public void setShippingMode(ShippingMode shippingMode) {
this.shippingMode = shippingMode;
}
public Incoterm getIncoterm() {
return incoterm;
}
public void setIncoterm(Incoterm incoterm) {
this.incoterm = incoterm;
}
public Currency getCurrency() {
return currency;
}
public void setCurrency(Currency currency) {
this.currency = currency;
}
public BigDecimal getFinanceInsuranceRate() {
return financeInsuranceRate;
}
public void setFinanceInsuranceRate(BigDecimal financeInsuranceRate) {
this.financeInsuranceRate = financeInsuranceRate;
}
public ElcReports getElcReportConfig() {
return elcReportConfig;
}
public void setElcReportConfig(ElcReports elcReportConfig) {
this.elcReportConfig = elcReportConfig;
}
public BigDecimal getFinanceCollectionRate() {
return financeCollectionRate;
}
public void setFinanceCollectionRate(BigDecimal financeCollectionRate) {
this.financeCollectionRate = financeCollectionRate;
}
public BigDecimal getFinanceCollectionMin() {
return financeCollectionMin;
}
public void setFinanceCollectionMin(BigDecimal financeCollectionMin) {
this.financeCollectionMin = financeCollectionMin;
}
public BigDecimal getFinanceLCRate() {
return financeLCRate;
}
public void setFinanceLCRate(BigDecimal financeLCRate) {
this.financeLCRate = financeLCRate;
}
public BigDecimal getFinanceLCAdditionalValue() {
return financeLCAdditionalValue;
}
public void setFinanceLCAdditionalValue(BigDecimal financeLCAdditionalValue) {
this.financeLCAdditionalValue = financeLCAdditionalValue;
}
public BigDecimal getFinanceLCMin() {
return financeLCMin;
}
public void setFinanceLCMin(BigDecimal financeLCMin) {
this.financeLCMin = financeLCMin;
}
public BigDecimal getFinanceOpenAccountRate() {
return financeOpenAccountRate;
}
public void setFinanceOpenAccountRate(BigDecimal financeOpenAccountRate) {
this.financeOpenAccountRate = financeOpenAccountRate;
}
public BigDecimal getFinanceOpenAccountMin() {
return financeOpenAccountMin;
}
public void setFinanceOpenAccountMin(BigDecimal financeOpenAccountMin) {
this.financeOpenAccountMin = financeOpenAccountMin;
}
public BigDecimal getFinanceOpenAccountMax() {
return financeOpenAccountMax;
}
public void setFinanceOpenAccountMax(BigDecimal financeOpenAccountMax) {
this.financeOpenAccountMax = financeOpenAccountMax;
}
public BigDecimal getFinanceOpenAccountValue() {
return financeOpenAccountValue;
}
public void setFinanceOpenAccountValue(BigDecimal financeOpenAccountValue) {
this.financeOpenAccountValue = financeOpenAccountValue;
}
public boolean isCalculationOrFlatValue() {
return calculationOrFlatValue;
}
public void setCalculationOrFlatValue(boolean calculationOrFlatValue) {
this.calculationOrFlatValue = calculationOrFlatValue;
}
public boolean isSupplierInvoicePercentage() {
return supplierInvoicePercentage;
}
public void setSupplierInvoicePercentage(boolean supplierInvoicePercentage) {
this.supplierInvoicePercentage = supplierInvoicePercentage;
}
public BigDecimal getWarehousingRate() {
return warehousingRate;
}
public void setWarehousingRate(BigDecimal warehousingRate) {
this.warehousingRate = warehousingRate;
}
public boolean isPackageDimensionMandatory() {
return packageDimensionMandatory;
}
public void setPackageDimensionMandatory(boolean packageDimensionMandatory) {
this.packageDimensionMandatory = packageDimensionMandatory;
}
public BigDecimal getNonRecyclablePlasticHangerDuty() {
return nonRecyclablePlasticHangerDuty;
}
public void setNonRecyclablePlasticHangerDuty(BigDecimal nonRecyclablePlasticHangerDuty) {
this.nonRecyclablePlasticHangerDuty = nonRecyclablePlasticHangerDuty;
}
public BigDecimal getWoodenHangerDuty() {
return woodenHangerDuty;
}
public void setWoodenHangerDuty(BigDecimal woodenHangerDuty) {
this.woodenHangerDuty = woodenHangerDuty;
}
public BigDecimal getRecyclablePlasticHangerDuty() {
return recyclablePlasticHangerDuty;
}
public void setRecyclablePlasticHangerDuty(BigDecimal recyclablePlasticHangerDuty) {
this.recyclablePlasticHangerDuty = recyclablePlasticHangerDuty;
}
public boolean isAllowReportFormatOption() {
return allowReportFormatOption;
}
public void setAllowReportFormatOption(boolean allowReportFormatOption) {
this.allowReportFormatOption = allowReportFormatOption;
}
public boolean isEditSupplierCurrency() {
return editSupplierCurrency;
}
public void setEditSupplierCurrency(boolean editSupplierCurrency) {
this.editSupplierCurrency = editSupplierCurrency;
}
public boolean isElcUsingProduct() {
return elcUsingProduct;
}
public void setElcUsingProduct(boolean elcUsingProduct) {
this.elcUsingProduct = elcUsingProduct;
}
public Employee getBuyer() {
return buyer;
}
public void setBuyer(Employee buyer) {
this.buyer = buyer;
}
public OrganisationalUnit getOrganisationalUnit() {
return organisationalUnit;
}
public void setOrganisationalUnit(OrganisationalUnit organisationalUnit) {
this.organisationalUnit = organisationalUnit;
}
public boolean isAutoFinalise() {
return autoFinalise;
}
public void setAutoFinalise(boolean autoFinalise) {
this.autoFinalise = autoFinalise;
}
public ServiceProvider getFreightForwarder() {
return freightForwarder;
}
public void setFreightForwarder(ServiceProvider freightForwarder) {
this.freightForwarder = freightForwarder;
}
public ServiceProvider getClearingAgent() {
return clearingAgent;
}
public void setClearingAgent(ServiceProvider clearingAgent) {
this.clearingAgent = clearingAgent;
}
public boolean isAutoSignOff() {
return autoSignOff;
}
public void setAutoSignOff(boolean autoSignOff) {
this.autoSignOff = autoSignOff;
}
public Map<ContainerType, BigDecimal> getContainerCostMap() {
return containerCostMap;
}
public void setContainerCostMap(Map<ContainerType, BigDecimal> containerCostMap) {
this.containerCostMap = containerCostMap;
}
public boolean isAutoCalculateContainer() {
return autoCalculateContainer;
}
public void setAutoCalculateContainer(boolean autoCalculateContainer) {
this.autoCalculateContainer = autoCalculateContainer;
}
public boolean isCalculatePlannedSettlementDate() {
return calculatePlannedSettlementDate;
}
public void setCalculatePlannedSettlementDate(boolean calculatePlannedSettlementDate) {
this.calculatePlannedSettlementDate = calculatePlannedSettlementDate;
}
public boolean isCostOnUpdate() {
return costOnUpdate;
}
public void setCostOnUpdate(boolean costOnUpdate) {
this.costOnUpdate = costOnUpdate;
}
public boolean isOverridePlannedSettlementSpotRate() {
return overridePlannedSettlementSpotRate;
}
public void setOverridePlannedSettlementSpotRate(boolean overridePlannedSettlementSpotRate) {
this.overridePlannedSettlementSpotRate = overridePlannedSettlementSpotRate;
}
public boolean isManualTariffing() {
return manualTariffing;
}
public void setManualTariffing(boolean manualTariffing) {
this.manualTariffing = manualTariffing;
}
public Product getDefaultProductTemplate() {
return defaultProductTemplate;
}
public void setDefaultProductTemplate(Product defaultProductTemplate) {
this.defaultProductTemplate = defaultProductTemplate;
}
}