ClientConfig.java
package com.tradecloud.domain.configuration;
import com.tradecloud.common.base.PersistenceBase;
import com.tradecloud.domain.configuration.clearing.za.SARSImportConfig;
import com.tradecloud.domain.configuration.product.ProductClientConfig;
import com.tradecloud.domain.configuration.supplier.SupplierClientConfig;
import com.tradecloud.domain.export.ExportConfig;
import com.tradecloud.domain.model.elcordermanagement.ElcConfig;
import org.hibernate.annotations.ForeignKey;
import javax.persistence.*;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import java.util.ArrayList;
import java.util.List;
/**
* Parent entity for client configuration. This class encapsulates various
* client configuration classes that in turn encapsulate their specific
* configurations.
*/
@Entity
@Table(name = "clientconfig")
@Access(AccessType.FIELD)
@NamedQueries({
@NamedQuery(name = "clientConfig.findStateClientConfig", query = "select c.stateClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findAgentClientConfig", query = "select c.agentClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findContainerClientConfig", query = "select c.containerClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findTariffingClientConfig", query = "select c.tariffingClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findGlobalClientConfig", query = "select c.globalClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findShipmentClientConfig", query = "select c.shipmentClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findCostingClientConfig", query = "select c.costingClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findDocumentClientConfig", query = "select c.documentClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findConsignmentClientConfig", query = "select c.consignmentClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findExchangeRateClientConfig", query = "select c.exchangeRateClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findSupplierClientConfig", query = "select c.supplierClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findProductClientConfig", query = "select c.productClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findSABSSlidingScaleClientConfig", query = "select c.sabsSlidingScaleClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findSABSTariffClientConfig", query = "select c.sabsTariffClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findItemsAndOrdersClientConfig", query = "select c.itemsAndOrdersClientConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findExportConfig", query = "select c.exportconfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findReportMainConfig", query = "select c.reportMainConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findElcClientConfig", query = "select c.elcConfig from ClientConfig c"),
@NamedQuery(name = "clientConfig.findExchangeRateOrganisationalUnitTier", query =
"select e.stdOrganisationalUnitTier from ClientConfig c left join c.exchangeRateClientConfig e"),
@NamedQuery(name = "clientConfig.findAutoEmailConfigForReport", query = "select c.autoEmailReportConfigList " +
"from ClientConfig c where reportType= :reportType"),
@NamedQuery(name = "clientConfig.findAllAutoEmailConfigForReport", query = "select c.autoEmailReportConfigList from ClientConfig c"),
@NamedQuery(name = "clientConfig.findLetterOfCreditClientConfig", query = "select c.letterOfCreditClientConfig from ClientConfig c")})
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "ClientConfig")
public class ClientConfig extends PersistenceBase {
private static final long serialVersionUID = 1L;
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_globalclientconfig")
@XmlElement(name = "GlobalClientConfig")
private GlobalClientConfig globalClientConfig = new GlobalClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_agentclientconfig")
@XmlElement(name = "AgentClientConfig")
private AgentClientConfig agentClientConfig = new AgentClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_itemsandorders")
@XmlElement(name = "ItemsAndOrdersClientConfig")
private ItemsAndOrdersClientConfig itemsAndOrdersClientConfig = new ItemsAndOrdersClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_sabsslidingscaleclientconfig")
@XmlElement(name = "SABSSlidingScaleClientConfig")
private SABSSlidingScaleClientConfig sabsSlidingScaleClientConfig = new SABSSlidingScaleClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_sabstariffclientconfig")
@XmlElement(name = "SABSTariffClientConfig")
private SABSTariffClientConfig sabsTariffClientConfig = new SABSTariffClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_supplierclientconfig")
@XmlElement(name = "SupplierClientConfig")
private SupplierClientConfig supplierClientConfig = new SupplierClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_productclientconfig")
@XmlElement(name = "ProductClientConfig")
private ProductClientConfig productClientConfig = new ProductClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_stateclientconfig")
@XmlElement(name = "StateClientConfig")
private StateClientConfig stateClientConfig = new StateClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_tariffingclientconfig")
@XmlElement(name = "TariffingClientConfig")
private TariffingClientConfig tariffingClientConfig = new TariffingClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_costingclientconfig")
@XmlElement(name = "CostingClientConfig")
private CostingClientConfig costingClientConfig = new CostingClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_consignmentclientconfig")
@XmlElement(name = "ConsignmentClientConfig")
private ConsignmentClientConfig consignmentClientConfig = new ConsignmentClientConfig();
@OneToOne
@ForeignKey(name = "fk_shipmentclientconfig")
@XmlElement(name = "ShipmentClientConfig")
private ShipmentClientConfig shipmentClientConfig = new ShipmentClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_documentclientconfig")
@XmlElement(name = "DocumentClientConfig")
private DocumentClientConfig documentClientConfig = new DocumentClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_containerclientconfig")
@XmlElement(name = "ContainerClientConfig")
private ContainerClientConfig containerClientConfig = new ContainerClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_exchangerateclientconfig")
@XmlElement(name = "ExchangeRateClientConfig")
private ExchangeRateClientConfig exchangeRateClientConfig = new ExchangeRateClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_elcconfig")
@XmlElement(name = "ElcConfig")
private ElcConfig elcConfig = new ElcConfig();
@OneToMany(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_orderleadtime")
@XmlElement(name = "OrderLeadTime")
private List<OrderLeadTime> orderLeadTime = new ArrayList<OrderLeadTime>(0);
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_letterofcreditclientconfig")
@XmlElement(name = "LetterOfCreditClientConfig")
private LetterOfCreditClientConfig letterOfCreditClientConfig = new LetterOfCreditClientConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_exportconfig")
@XmlElement(name = "ExportConfig")
private ExportConfig exportconfig = new ExportConfig();
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_reportmainconfig")
@XmlElement(name = "ReportMainConfig")
private ReportMainConfig reportMainConfig = new ReportMainConfig();
@OneToMany(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_autoemailreportconfig")
@XmlElement(name = "AutoEmailReportConfig")
private List<AutoEmailReportConfig> autoEmailReportConfigList = new ArrayList<>(0);
@OneToMany(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_clientconfig_specialrequirement")
@XmlElement(name = "SpecialRequirementConfig")
private List<SpecialRequirementConfig> specialRequirementConfigList = new ArrayList<>(0);
@OneToOne(cascade = CascadeType.ALL)
@ForeignKey(name = "fk_paymentConfig")
@XmlElement(name = "PaymentConfig")
private PaymentConfig paymentConfig;
@OneToMany(cascade = CascadeType.ALL)
private List<SARSImportConfig> sarsImportConfig;
public ClientConfig() {
}
public AgentClientConfig getAgentClientConfig() {
return agentClientConfig;
}
public void setAgentClientConfig(AgentClientConfig agentClientConfig) {
this.agentClientConfig = agentClientConfig;
}
public ItemsAndOrdersClientConfig getItemsAndOrdersClientConfig() {
return itemsAndOrdersClientConfig;
}
public void setItemsAndOrdersClientConfig(ItemsAndOrdersClientConfig itemsAndOrdersClientConfig) {
this.itemsAndOrdersClientConfig = itemsAndOrdersClientConfig;
}
public GlobalClientConfig getGlobalClientConfig() {
return globalClientConfig;
}
public void setGlobalClientConfig(GlobalClientConfig globalClientConfig) {
this.globalClientConfig = globalClientConfig;
}
public SupplierClientConfig getSupplierClientConfig() {
return supplierClientConfig;
}
public void setSupplierClientConfig(SupplierClientConfig supplierClientConfig) {
this.supplierClientConfig = supplierClientConfig;
}
public ProductClientConfig getProductClientConfig() {
return productClientConfig;
}
public void setProductClientConfig(ProductClientConfig productClientConfig) {
this.productClientConfig = productClientConfig;
}
public CostingClientConfig getCostingClientConfig() {
return costingClientConfig;
}
public void setCostingClientConfig(CostingClientConfig costingClientConfig) {
this.costingClientConfig = costingClientConfig;
}
public ConsignmentClientConfig getConsignmentClientConfig() {
return consignmentClientConfig;
}
public void setConsignmentClientConfig(ConsignmentClientConfig consignmentClientConfig) {
this.consignmentClientConfig = consignmentClientConfig;
}
public ShipmentClientConfig getShipmentClientConfig() {
return shipmentClientConfig;
}
public void setShipmentClientConfig(ShipmentClientConfig shipmentClientConfig) {
this.shipmentClientConfig = shipmentClientConfig;
}
public DocumentClientConfig getDocumentClientConfig() {
return documentClientConfig;
}
public void setDocumentClientConfig(DocumentClientConfig documentClientConfig) {
this.documentClientConfig = documentClientConfig;
}
public ContainerClientConfig getContainerClientConfig() {
return containerClientConfig;
}
public void setContainerClientConfig(ContainerClientConfig containerClientConfig) {
this.containerClientConfig = containerClientConfig;
}
public ExchangeRateClientConfig getExchangeRateClientConfig() {
return exchangeRateClientConfig;
}
public void setExchangeRateClientConfig(ExchangeRateClientConfig exchangeRateClientConfig) {
this.exchangeRateClientConfig = exchangeRateClientConfig;
}
public StateClientConfig getStateClientConfig() {
return stateClientConfig;
}
public void setStateClientConfig(StateClientConfig stateClientConfig) {
this.stateClientConfig = stateClientConfig;
}
public List<OrderLeadTime> getOrderLeadTime() {
return orderLeadTime;
}
public void setOrderLeadTime(List<OrderLeadTime> orderLeadTime) {
this.orderLeadTime = orderLeadTime;
}
public ElcConfig getElcConfig() {
return elcConfig;
}
public void setElcConfig(ElcConfig elcConfig) {
this.elcConfig = elcConfig;
}
public TariffingClientConfig getTariffingClientConfig() {
return tariffingClientConfig;
}
public void setTariffingClientConfig(TariffingClientConfig tariffingClientConfig) {
this.tariffingClientConfig = tariffingClientConfig;
}
public LetterOfCreditClientConfig getLetterOfCreditClientConfig() {
return letterOfCreditClientConfig;
}
public void setLetterOfCreditClientConfig(LetterOfCreditClientConfig letterOfCreditClientConfig) {
this.letterOfCreditClientConfig = letterOfCreditClientConfig;
}
public ExportConfig getExportconfig() {
return exportconfig;
}
public void setExportconfig(ExportConfig exportconfig) {
this.exportconfig = exportconfig;
}
public SABSSlidingScaleClientConfig getSabsSlidingScaleClientConfig() {
return sabsSlidingScaleClientConfig;
}
public void setSabsSlidingScaleClientConfig(SABSSlidingScaleClientConfig sabsSlidingScaleClientConfig) {
this.sabsSlidingScaleClientConfig = sabsSlidingScaleClientConfig;
}
public SABSTariffClientConfig getSabsTariffClientConfig() {
return sabsTariffClientConfig;
}
public void setSabsTariffClientConfig(SABSTariffClientConfig sabsTariffClientConfig) {
this.sabsTariffClientConfig = sabsTariffClientConfig;
}
public ReportMainConfig getReportMainConfig() {
return reportMainConfig;
}
public void setReportMainConfig(ReportMainConfig reportMainConfig) {
this.reportMainConfig = reportMainConfig;
}
public List<AutoEmailReportConfig> getAutoEmailReportConfigList() {
return autoEmailReportConfigList;
}
public void setAutoEmailReportConfigList(List<AutoEmailReportConfig> autoEmailReportConfigList) {
this.autoEmailReportConfigList = autoEmailReportConfigList;
}
public List<SpecialRequirementConfig> getSpecialRequirementConfigList() {
return specialRequirementConfigList;
}
public void setSpecialRequirementConfigList(List<SpecialRequirementConfig> specialRequirementConfigList) {
this.specialRequirementConfigList = specialRequirementConfigList;
}
public PaymentConfig getPaymentConfig() {
return paymentConfig;
}
public void setPaymentConfig(PaymentConfig paymentConfig) {
this.paymentConfig = paymentConfig;
}
public List<SARSImportConfig> getSarsImportConfig() {
return sarsImportConfig;
}
public void setSarsImportConfig(List<SARSImportConfig> sarsImportConfig) {
this.sarsImportConfig = sarsImportConfig;
}
public List<SARSImportConfig> getActiveSARSImportConfig() {
return PersistenceBase.getActiveList(sarsImportConfig);
}
}