SupplyPaymentReportDTO.java

package com.tradecloud.dto.invoice;


import com.tradecloud.domain.document.DocumentState;

import javax.xml.bind.annotation.*;
import java.util.Date;


/**
 * Created with IntelliJ IDEA.
 * User: ds
 * Date: 2014/04/07
 * Time: 9:33 AM
 * To change this template use File | Settings | File Templates.
 *
 * List<SupplyPaymentRepo   rtDTO> list = ?
 * SupplyPaymentReportDTO x = new ?
 * for ( CommercialInvoice ci : queryDatabase(?) ) {
 *     x.setDocumentReference(ci.getDocumentReference())
 *     x.setOther
 *     x.setMore
 *     for ( Order o : ci.getConsignment.getOrders() ) {
 *         x.setOrderReferences( x.getOrderReferences() + "," + o.getOrderReference() );
 *         if ( x.getPaymentTerm() == null ) {
 *             x.setPaymentTerm( o.getPaymentTerm() );
 *         }
 *     }
 * }
 *
 *
 *
 *
 *
 *
 */

@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "SupplyPaymentReport")
public class SupplyPaymentReportDTO {

    @XmlTransient
    private long documentId;

    @XmlTransient
    private long shipmentId;

    @XmlAttribute(required = true)
    private String documentReference;

    @XmlAttribute(required = true)
    private Date documentDate;

    @XmlAttribute(required = true)
    private Date documentReceivedDate;

    @XmlAttribute(required = true)
    private String businessUnit;

    @XmlAttribute(required = true)
    private String supplierName;

    @XmlAttribute(required = true)
    private double ALCForwardRate;

    @XmlAttribute(required = true)
    private double documentValue;

    @XmlAttribute(required = true)
    private String documentCurrency;

    @XmlAttribute(required = true)
    private DocumentState documentState;

    @XmlAttribute(required = true)
    private String paymentState;

    @XmlAttribute(required = true)
    private String noOfDaysToSettlement;

    @XmlAttribute(required = true)
    private String documentComments;

    @XmlAttribute(required = true)
    private String shipmentReference;

    @XmlAttribute(required = true)
    private Date billOfLandingDate;

    @XmlAttribute(required = true)
    private Date settlementDate;

    // Comma separated list of order references
    private String orderReferences;

    // The first order payment method if multiple
    @XmlAttribute(required = true)
    private String paymentMethod;

    // The first order payment term if multiple
    @XmlAttribute (required = true)
    private String paymentTerm;

    // Comma separated if multiple orders
    @XmlAttribute(required = true)
    private String lcBankReference;

    // Comma separated if multiple orders
    @XmlAttribute(required = true)
    private String shippingReference;

    //@XmlElement(name ="SupplyPaymentReportOrder", required = true)
    //private List<SupplyPaymentReportResultsOrderDTO> supplyPaymentReportResultsOrderDTOsList;

    public String getDocumentReference() {
        return documentReference;
    }

    public void setDocumentReference(String documentReference) {
        this.documentReference = documentReference;
    }

    public Date getDocumentDate() {
        return documentDate;
    }

    public void setDocumentDate(Date documentDate) {
        this.documentDate = documentDate;
    }

    public Date getDocumentReceivedDate() {
        return documentReceivedDate;
    }

    public void setDocumentReceivedDate(Date documentReceivedDate) {
        this.documentReceivedDate = documentReceivedDate;
    }

    public double getALCForwardRate() {
        return ALCForwardRate;
    }

    public void setALCForwardRate(double ALCForwardRate) {
        this.ALCForwardRate = ALCForwardRate;
    }

    public double getDocumentValue() {
        return documentValue;
    }

    public void setDocumentValue(double documentValue) {
        this.documentValue = documentValue;
    }

    public String getDocumentCurrency() {
        return documentCurrency;
    }

    public void setDocumentCurrency(String documentCurrency) {
        this.documentCurrency = documentCurrency;
    }

    public DocumentState getDocumentState() {
        return documentState;
    }

    public void setDocumentState(DocumentState documentState) {
        this.documentState = documentState;
    }

    public String getPaymentState() {
        return paymentState;
    }

    public void setPaymentState(String paymentState) {
        this.paymentState = paymentState;
    }

    public String getNoOfDaysToSettlement() {
        return noOfDaysToSettlement;
    }

    public void setNoOfDaysToSettlement(String noOfDaysToSettlement) {
        this.noOfDaysToSettlement = noOfDaysToSettlement;
    }

    public String getDocumentComments() {
        return documentComments;
    }

    public void setDocumentComments(String documentComments) {
        this.documentComments = documentComments;
    }

    public String getShipmentReference() {
        return shipmentReference;
    }

    public void setShipmentReference(String shipmentReference) {
        this.shipmentReference = shipmentReference;
    }

    public Date getBillOfLandingDate() {
        return billOfLandingDate;
    }

    public void setBillOfLandingDate(Date billOfLandingDate) {
        this.billOfLandingDate = billOfLandingDate;
    }

    public Date getSettlementDate() {
        return settlementDate;
    }

    public void setSettlementDate(Date settlementDate) {
        this.settlementDate = settlementDate;
    }

//    public List<SupplyPaymentReportResultsOrderDTO> getSupplyPaymentReportResultsOrderDTOsList() {
//        return supplyPaymentReportResultsOrderDTOsList;
//    }
//
//    public void setSupplyPaymentReportResultsOrderDTOsList(List<SupplyPaymentReportResultsOrderDTO> supplyPaymentReportResultsOrderDTOsList) {
//        this.supplyPaymentReportResultsOrderDTOsList = supplyPaymentReportResultsOrderDTOsList;
//    }

    public String getBusinessUnit() {
        return businessUnit;
    }

    public void setBusinessUnit(String businessUnit) {
        this.businessUnit = businessUnit;
    }

    public String getSupplierName() {
        return supplierName;
    }

    public void setSupplierName(String supplierName) {
        this.supplierName = supplierName;
    }

    public String getOrderReferences() {
        return orderReferences;
    }

    public void setOrderReferences(String orderReferences) {
        this.orderReferences = orderReferences;
    }

    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 getLcBankReference() {
        return lcBankReference;
    }

    public void setLcBankReference(String lcBankReference) {
        this.lcBankReference = lcBankReference;
    }

    public String getShippingReference() {
        return shippingReference;
    }

    public void setShippingReference(String shippingReference) {
        this.shippingReference = shippingReference;
    }

    public long getDocumentId() {
        return documentId;
    }

    public void setDocumentId(long documentId) {
        this.documentId = documentId;
    }

    public long getShipmentId() {
        return shipmentId;
    }

    public void setShipmentId(long shipmentId) {
        this.shipmentId = shipmentId;
    }
}