PfOrderNotShippedSearchResult.java
package com.tradecloud.dto.order;
import lombok.Getter;
import lombok.Setter;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Optional;
/**
* Created by ds on 2014/04/29.
*/
@XmlRootElement(name = "PfOrderNotShippedSearchResult")
@XmlAccessorType(XmlAccessType.FIELD)
@Getter
@Setter
public class PfOrderNotShippedSearchResult extends OrderSearchResult {
/*@XmlAttribute(required = true)
String latestShipmentDate;*/
@XmlAttribute(required = true)
String consignmentReference;
@XmlAttribute(required = true)
String orderReference;
@XmlAttribute(required = true)
String proFormaReference;
@XmlAttribute(required = true)
String shippingReference;
//originally, and ideally, originalLatestShipmentDate should be a Date object. But, is now inactive at the moment.
//So, in future, change to Date. If this date is null it does not make it to the xml output.
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
Date originalLatestShipmentDate;
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
Date requiredOnSiteDate;
@XmlAttribute(required = true)
String freightForwarderName;
@XmlAttribute(required = true)
String carrierName;
@XmlAttribute(required = true)
String organisationalUnitName;
@XmlAttribute(required = true)
String buyerName;
@XmlAttribute(required = true)
String supplierName;
@XmlAttribute(required = true)
BigDecimal supplierInvoiceValue;
@XmlAttribute(required = true)
String supplierInvoiceCurrency;
@XmlAttribute(required = true)
String paymentMethod;
@XmlAttribute(required = true)
String paymentTerm;
@XmlAttribute(required = true)
String lcBankName;
@XmlAttribute(required = true)
String lcBankReference;
@XmlAttribute(required = true)
String lcNumber;
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
Date lcEstablishedDate;
@XmlAttribute(required = true)
String placeOfLoading;
@XmlAttribute(required = true)
String placeOfDischarge;
@XmlAttribute(required = true)
String finalDestination;
@XmlAttribute(required = true)
String shippingMode;
@XmlAttribute(required = true)
String multiModalShippingMode;
@XmlAttribute(required = true)
String incoTerm;
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
Date plannedShipmentDate;
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
Date estimatedArrivalDate;
@XmlAttribute(required = true)
String vesselName;
@XmlAttribute(required = true)
BigDecimal totalWeight;
@XmlAttribute(required = true)
BigDecimal totalVolume;
@XmlAttribute(required = true)
String forwardRate;
@XmlAttribute(required = true)
String spotRate;
private BigDecimal TEUs;
@XmlAttribute(required = true)
private BigDecimal containerFCL20GPquantity;
@XmlAttribute(required = true)
private BigDecimal containerFCL20REEFERGPquantity;
@XmlAttribute(required = true)
private BigDecimal containerFCL40GPquantity;
@XmlAttribute(required = true)
private BigDecimal containerFCL40REEFERGPquantity;
@XmlAttribute(required = true)
private BigDecimal containerFCL40HIGHCUBEquantity;
@XmlAttribute(required = true)
private BigDecimal containerFCL40REEFERHIGHCUBEquantity;
@XmlAttribute(required = true)
private BigDecimal containerLCLSEAquantity;
@XmlAttribute(required = true)
private BigDecimal noDaysToLatestShipmentDate;
@XmlAttribute(required = true)
private String status;
@XmlAttribute(required = true)
private String businessState;
@XmlAttribute(required = true)
private String orderComments;
@XmlAttribute(required = true)
private String consignmentComments;
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
private Date bookingDate;
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
private Date cargoReadyDate;
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
private Date originalCargoReadyDate;
@XmlAttribute(required = true)
String plannedCargoCarrier;
@XmlAttribute(required = true)
String plannedPortOfDischarge;
@XmlJavaTypeAdapter(value = XmlAdapterDate.class, type = java.util.Date.class)
private Date freightReceivedDate;
@XmlAttribute(required = true)
private String styleReference;
@XmlAttribute(required = true)
private String styleDescription;
@XmlAttribute(required = true)
private String lspBookingReference;
@XmlAttribute(required = true)
String country;
@XmlAttribute(required = true)
private String previouslyBooked;
private BigDecimal totalQuantity;
private BigDecimal retailValueOfOrders;
private BigDecimal customsDuty;
private BigDecimal customsVat;
private Date availabilityDate;
private Date supplierBookingRequestDate;
private Long organisationalUnitId;
public String getPreviouslyBooked() {
return previouslyBooked;
}
public void setPreviouslyBooked(String previouslyBooked) {
this.previouslyBooked = previouslyBooked;
}
public String getConsignmentReference() {
return consignmentReference;
}
public void setConsignmentReference(String consignmentReference) {
this.consignmentReference = consignmentReference;
}
public String getOrderReference() {
return orderReference;
}
public Date getCargoReadyDate() {
return cargoReadyDate;
}
public void setCargoReadyDate(Date cargoReadyDate) {
this.cargoReadyDate = cargoReadyDate;
}
public String getPlannedCargoCarrier() {
return plannedCargoCarrier;
}
public void setPlannedCargoCarrier(String plannedCargoCarrier) {
this.plannedCargoCarrier = plannedCargoCarrier;
}
public String getPlannedPortOfDischarge() {
return plannedPortOfDischarge;
}
public void setPlannedPortOfDischarge(String plannedPortOfDischarge) {
this.plannedPortOfDischarge = plannedPortOfDischarge;
}
public Date getOriginalCargoReadyDate() {
return originalCargoReadyDate;
}
public void setOriginalCargoReadyDate(Date originalCargoReadyDate) {
this.originalCargoReadyDate = originalCargoReadyDate;
}
public void setOrderReference(String orderReference) {
this.orderReference = orderReference;
}
public String getProFormaReference() {
return proFormaReference;
}
public void setProFormaReference(String proFormaReference) {
this.proFormaReference = proFormaReference;
}
public String getShippingReference() {
return shippingReference;
}
public void setShippingReference(String shippingReference) {
this.shippingReference = shippingReference;
}
public Date getOriginalLatestShipmentDate() {
return originalLatestShipmentDate;
}
public void setOriginalLatestShipmentDate(Date originalLatestShipmentDate) {
this.originalLatestShipmentDate = originalLatestShipmentDate;
}
public Date getRequiredOnSiteDate() {
return requiredOnSiteDate;
}
public void setRequiredOnSiteDate(Date requiredOnSiteDate) {
this.requiredOnSiteDate = requiredOnSiteDate;
}
public String getFreightForwarderName() {
return freightForwarderName;
}
public void setFreightForwarderName(String freightForwarderName) {
this.freightForwarderName = freightForwarderName;
}
public String getCarrierName() {
return carrierName;
}
public void setCarrierName(String carrierName) {
this.carrierName = carrierName;
}
public String getOrganisationalUnitName() {
return organisationalUnitName;
}
public void setOrganisationalUnitName(String organisationalUnitName) {
this.organisationalUnitName = organisationalUnitName;
}
public String getBuyerName() {
return buyerName;
}
public void setBuyerName(String buyerName) {
this.buyerName = buyerName;
}
public String getSupplierName() {
return supplierName;
}
public void setSupplierName(String supplierName) {
this.supplierName = supplierName;
}
public BigDecimal getSupplierInvoiceValue() {
return supplierInvoiceValue;
}
public void setSupplierInvoiceValue(BigDecimal supplierInvoiceValue) {
this.supplierInvoiceValue = supplierInvoiceValue;
}
public String getSupplierInvoiceCurrency() {
return supplierInvoiceCurrency;
}
public void setSupplierInvoiceCurrency(String supplierInvoiceCurrency) {
this.supplierInvoiceCurrency = supplierInvoiceCurrency;
}
public String getPaymentMethod() {
return paymentMethod;
}
public void setPaymentMethod(String paymentMethod) {
this.paymentMethod = paymentMethod;
}
public String getPaymentTerm() {
return paymentTerm;
}
public void setPaymentTerm(String paymentTerm) {
this.paymentTerm = paymentTerm;
}
public String getLcBankName() {
return lcBankName;
}
public void setLcBankName(String lcBankName) {
this.lcBankName = lcBankName;
}
public String getLcBankReference() {
return lcBankReference;
}
public void setLcBankReference(String lcBankReference) {
this.lcBankReference = lcBankReference;
}
public String getLcNumber() {
return lcNumber;
}
public void setLcNumber(String lcNumber) {
this.lcNumber = lcNumber;
}
public Date getLcEstablishedDate() {
return lcEstablishedDate;
}
public void setLcEstablishedDate(Date lcEstablishedDate) {
this.lcEstablishedDate = lcEstablishedDate;
}
public String getPlaceOfLoading() {
return placeOfLoading;
}
public void setPlaceOfLoading(String placeOfLoading) {
this.placeOfLoading = placeOfLoading;
}
public String getPlaceOfDischarge() {
return placeOfDischarge;
}
public void setPlaceOfDischarge(String placeOfDischarge) {
this.placeOfDischarge = placeOfDischarge;
}
public String getFinalDestination() {
return finalDestination;
}
public void setFinalDestination(String finalDestination) {
this.finalDestination = finalDestination;
}
public String getShippingMode() {
return shippingMode;
}
public void setShippingMode(String shippingMode) {
this.shippingMode = shippingMode;
}
public String getIncoTerm() {
return incoTerm;
}
public void setIncoTerm(String incoTerm) {
this.incoTerm = incoTerm;
}
public Date getPlannedShipmentDate() {
return plannedShipmentDate;
}
public void setPlannedShipmentDate(Date plannedShipmentDate) {
this.plannedShipmentDate = plannedShipmentDate;
}
public Date getEstimatedArrivalDate() {
return estimatedArrivalDate;
}
public void setEstimatedArrivalDate(Date estimatedArrivalDate) {
this.estimatedArrivalDate = estimatedArrivalDate;
}
public String getVesselName() {
return vesselName;
}
public void setVesselName(String vesselName) {
this.vesselName = vesselName;
}
public BigDecimal getTotalWeight() {
return totalWeight;
}
public void setTotalWeight(BigDecimal totalWeight) {
this.totalWeight = totalWeight;
}
public BigDecimal getTotalVolume() {
return totalVolume;
}
public void setTotalVolume(BigDecimal totalVolume) {
this.totalVolume = totalVolume;
}
public BigDecimal getTEUs() {
return TEUs;
}
public void setTEUs(BigDecimal TEUs) {
this.TEUs = TEUs;
}
public BigDecimal getContainerFCL20GPquantity() {
return containerFCL20GPquantity;
}
public void setContainerFCL20GPquantity(BigDecimal containerFCL20GPquantity) {
this.containerFCL20GPquantity = containerFCL20GPquantity;
}
public BigDecimal getContainerFCL20REEFERGPquantity() {
return containerFCL20REEFERGPquantity;
}
public void setContainerFCL20REEFERGPquantity(BigDecimal containerFCL20REEFERGPquantity) {
this.containerFCL20REEFERGPquantity = containerFCL20REEFERGPquantity;
}
public BigDecimal getContainerFCL40GPquantity() {
return containerFCL40GPquantity;
}
public void setContainerFCL40GPquantity(BigDecimal containerFCL40GPquantity) {
this.containerFCL40GPquantity = containerFCL40GPquantity;
}
public BigDecimal getContainerFCL40REEFERGPquantity() {
return containerFCL40REEFERGPquantity;
}
public void setContainerFCL40REEFERGPquantity(BigDecimal containerFCL40REEFERGPquantity) {
this.containerFCL40REEFERGPquantity = containerFCL40REEFERGPquantity;
}
public BigDecimal getContainerFCL40HIGHCUBEquantity() {
return containerFCL40HIGHCUBEquantity;
}
public void setContainerFCL40HIGHCUBEquantity(BigDecimal containerFCL40HIGHCUBEquantity) {
this.containerFCL40HIGHCUBEquantity = containerFCL40HIGHCUBEquantity;
}
public BigDecimal getContainerFCL40REEFERHIGHCUBEquantity() {
return containerFCL40REEFERHIGHCUBEquantity;
}
public void setContainerFCL40REEFERHIGHCUBEquantity(BigDecimal containerFCL40REEFERHIGHCUBEquantity) {
this.containerFCL40REEFERHIGHCUBEquantity = containerFCL40REEFERHIGHCUBEquantity;
}
public BigDecimal getContainerLCLSEAquantity() {
return containerLCLSEAquantity;
}
public void setContainerLCLSEAquantity(BigDecimal containerLCLSEAquantity) {
this.containerLCLSEAquantity = containerLCLSEAquantity;
}
public BigDecimal getNoDaysToLatestShipmentDate() {
return noDaysToLatestShipmentDate;
}
public void setNoDaysToLatestShipmentDate(BigDecimal noDaysToLatestShipmentDate) {
this.noDaysToLatestShipmentDate = noDaysToLatestShipmentDate;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getBusinessState() {
return businessState;
}
public void setBusinessState(String businessState) {
this.businessState = businessState;
}
public String getOrderComments() {
return orderComments;
}
public void setOrderComments(String orderComments) {
this.orderComments = orderComments;
}
public String getConsignmentComments() {
return consignmentComments;
}
public void setConsignmentComments(String consignmentComments) {
this.consignmentComments = consignmentComments;
}
public Date getBookingDate() {
return bookingDate;
}
public void setBookingDate(Date bookingDate) {
this.bookingDate = bookingDate;
}
public Date getFreightReceivedDate() {
return freightReceivedDate;
}
public void setFreightReceivedDate(Date freightReceivedDate) {
this.freightReceivedDate = freightReceivedDate;
}
public String getStyleReference() {
return styleReference;
}
public void setStyleReference(String styleReference) {
this.styleReference = styleReference;
}
public String getStyleDescription() {
return styleDescription;
}
public void setStyleDescription(String styleDescription) {
this.styleDescription = styleDescription;
}
public String getLspBookingReference() {
return lspBookingReference;
}
public void setLspBookingReference(String lspBookingReference) {
this.lspBookingReference = lspBookingReference;
}
public String getForwardRate() {
return forwardRate;
}
public void setForwardRate(String forwardRate) {
this.forwardRate = forwardRate;
}
public String getSpotRate() {
return spotRate;
}
public void setSpotRate(String spotRate) {
this.spotRate = spotRate;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
public BigDecimal getTotalQuantity() {
return totalQuantity;
}
public void setTotalQuantity(BigDecimal totalQuantity) {
this.totalQuantity = totalQuantity;
}
public BigDecimal getCostValue() {
String rate = Optional.ofNullable(getForwardRate()).orElse("0.00");
return new BigDecimal(rate).multiply(getSupplierInvoiceValue());
}
public BigDecimal getRetailValueOfOrders() {
return retailValueOfOrders;
}
public void setRetailValueOfOrders(BigDecimal retailValueOfOrders) {
this.retailValueOfOrders = retailValueOfOrders;
}
public BigDecimal getCustomsDuty() {
return customsDuty;
}
public void setCustomsDuty(BigDecimal customsDuty) {
this.customsDuty = customsDuty;
}
public BigDecimal getCustomsVat() {
return customsVat;
}
public void setCustomsVat(BigDecimal customsVat) {
this.customsVat = customsVat;
}
public Date getAvailabilityDate() {
return availabilityDate;
}
public void setAvailabilityDate(Date availabilityDate) {
this.availabilityDate = availabilityDate;
}
public Date getSupplierBookingRequestDate() {
return supplierBookingRequestDate;
}
public void setSupplierBookingRequestDate(Date supplierBookingRequestDate) {
this.supplierBookingRequestDate = supplierBookingRequestDate;
}
public Long getOrganisationalUnitId() {
return organisationalUnitId;
}
public void setOrganisationalUnitId(Long organisationalUnitId) {
this.organisationalUnitId = organisationalUnitId;
}
}