ConsignmentFieldCopyHelper.java

package com.tradecloud.domain.consignment;

import com.tradecloud.domain.model.ordermanagement.Consignment;
import com.tradecloud.domain.model.ordermanagement.Order;

/**
 * A helper class for populating a consignment. Usually the order fields are pulled in.
 */
public class ConsignmentFieldCopyHelper {

    public static void copyFromOrder(Consignment consignment, Order order) {
        if (order.getShippingInformation() != null) {
            consignment.getShippingInfo().setPlaceOfLoading(order.getShippingInformation().getPlaceOfLoading());
            consignment.getShippingInfo().setPlaceOfDischarge(order.getShippingInformation().getPlaceOfDischarge());
            consignment.getShippingInfo().setShippingMode(order.getShippingInformation().getShippingMode());
            consignment.getShippingInfo().setMultiModalShippingMode(order.getShippingInformation().getMultiModalShippingMode());
            consignment.getShippingInfo().setFreightForwarder(order.getShippingInformation().getFreightForwarder());
        }
        consignment.getShippingInfo().setIncoterm(order.getShippingInformation().getIncoterm());
        consignment.setOrganisationalUnit(order.getOrganisationalUnit());
        consignment.setLatestShipmentDate(order.getOrderDates().getLatestShipmentDate());
        consignment.setArrivalDateAtPlaceOfDischarge(order.getOrderDates().getArrivalAtPlaceOfDischargeDate());
        consignment.getShippingInfo().setClearingAgent(order.getShippingInformation().getClearingAgent());
    }
}