OfferBaseDTO.java

package com.tradecloud.dto.external;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import java.util.List;

@JsonIgnoreProperties(ignoreUnknown = true)
public abstract class OfferBaseDTO {

    private UOM unitOfMeasurement;
    private Routing routing;
    private String destinationCode;
    private String destinationAddress;
    private Incoterm incoterm;
    private String originAddress;
    private String originCode;
    private String currency;
    private List<PackageDTO> packages;

    public UOM getUnitOfMeasurement() {
        return unitOfMeasurement;
    }

    public void setUnitOfMeasurement(UOM unitOfMeasurement) {
        this.unitOfMeasurement = unitOfMeasurement;
    }

    public Routing getRouting() {
        return routing;
    }

    public void setRouting(Routing routing) {
        this.routing = routing;
    }

    public String getDestinationCode() {
        return destinationCode;
    }

    public void setDestinationCode(String destinationCode) {
        this.destinationCode = destinationCode;
    }

    public String getDestinationAddress() {
        return destinationAddress;
    }

    public void setDestinationAddress(String destinationAddress) {
        this.destinationAddress = destinationAddress;
    }

    public Incoterm getIncoterm() {
        return incoterm;
    }

    public void setIncoterm(Incoterm incoterm) {
        this.incoterm = incoterm;
    }

    public String getOriginAddress() {
        return originAddress;
    }

    public void setOriginAddress(String originAddress) {
        this.originAddress = originAddress;
    }

    public String getOriginCode() {
        return originCode;
    }

    public void setOriginCode(String originCode) {
        this.originCode = originCode;
    }

    public String getCurrency() {
        return currency;
    }

    public void setCurrency(String currency) {
        this.currency = currency;
    }

    public List<PackageDTO> getPackages() {
        return packages;
    }

    public void setPackages(List<PackageDTO> packages) {
        this.packages = packages;
    }

    @Override
    public String toString() {
        return "[unitOfMeasurement = " + unitOfMeasurement + ", routing = " + routing
                + ", destinationCode = " + destinationCode + ", destinationAddress = " + destinationAddress
                + ", incoterm = " + incoterm + ", originAddress = " + originAddress + ", originCode = "
                + originCode + ", currency = " + currency + ", packages = " + packages + "]";
    }

    public enum UOM {
        METRIC_CM_KG,
        METRIC_M_KG,
        IMPERIAL_FT_LBS,
        IMPERIAL_IN_LBS
    }

    public enum Incoterm {
        CFR, CIF, CPT, CIP, EXW, FOB, FCA, DDU, DAT, DAP, DDP
    }

    public enum Routing {A2A, A2D, D2A, D2D}
}