AirShipmentDTO.java

package com.tradecloud.dto.api.shipment;

import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.tradecloud.dto.api.EventDTO;
import com.tradecloud.dto.shipment.ShipmentFcrNumber;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.ANY;
import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;

@JsonAutoDetect(fieldVisibility = ANY, getterVisibility = NONE, setterVisibility = NONE)
public class AirShipmentDTO extends com.tradecloud.schema.logistics.AirShipment implements ShipmentDTO {

    private String number;
    private Date airWayBillSpot;
    private Date stackToDate;

    @JsonProperty(required = false)
    @JsonPropertyDescription(value = "Shipment Reference to view.")
    private String airlineName;

    protected String incoterm;
    protected String freightForwarder;
    protected String clearingAgent;
    protected Date certificateOfOriginReceivedDate;
    protected Date copyDocumentsReceivedDate;
    protected Date originalDocumentsReceivedDate;
    protected Date originalETA;
    private String shippingMode;
    private List<AddedCommentDTO> comments;
    protected List<ShipmentContainerDTO> containers;
    @JsonProperty(access = JsonProperty.Access.AUTO)
    private List<ConsignmentDTO> consignmentDTOS = new ArrayList<>();
    @JsonPropertyDescription(value = "required for update")
    private Long id;
    @JsonProperty(access = JsonProperty.Access.AUTO)
    private List<EventDTO> eventDTOList;
    private Date vesselBerthedDate;
    @JsonProperty(access = JsonProperty.Access.AUTO)
    private Date settlementDate;

    protected List<ShipmentFcrNumber> fcrNumbersForShipment;

    @JsonProperty(access = JsonProperty.Access.AUTO)
    private List<SubShipmentDTO> subShipmentDTOList;

    private PlaceAddressDTO consolidationPointDTO;

    @JsonProperty(access = JsonProperty.Access.AUTO)
    private List<BasicShipmentInvoiceDTO> commercialInvoices =new ArrayList<>();
    @JsonProperty(access = JsonProperty.Access.AUTO)
    private List<BasicShipmentInvoiceDTO> serviceProviderInvoices =new ArrayList<>();

    protected String clearingAgentName;

    protected String freightForwarderName;

    private String statusName;

    public Date getAirWayBillSpot() {
        return airWayBillSpot;
    }

    public void setAirWayBillSpot(Date airWayBillSpot) {
        this.airWayBillSpot = airWayBillSpot;
    }

    public Date getStackToDate() {
        return stackToDate;
    }

    public void setStackToDate(Date stackToDate) {
        this.stackToDate = stackToDate;
    }

    public String getIncoterm() {
        return incoterm;
    }

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

    public String getFreightForwarder() {
        return freightForwarder;
    }

    public void setFreightForwarder(String freightForwarder) {
        this.freightForwarder = freightForwarder;
    }

    public String getClearingAgent() {
        return clearingAgent;
    }

    public void setClearingAgent(String clearingAgent) {
        this.clearingAgent = clearingAgent;
    }

    public Date getCertificateOfOriginReceivedDate() {
        return certificateOfOriginReceivedDate;
    }

    public void setCertificateOfOriginReceivedDate(Date certificateOfOriginReceivedDate) {
        this.certificateOfOriginReceivedDate = certificateOfOriginReceivedDate;
    }

    public Date getCopyDocumentsReceivedDate() {
        return copyDocumentsReceivedDate;
    }

    public void setCopyDocumentsReceivedDate(Date copyDocumentsReceivedDate) {
        this.copyDocumentsReceivedDate = copyDocumentsReceivedDate;
    }

    public Date getOriginalDocumentsReceivedDate() {
        return originalDocumentsReceivedDate;
    }

    public void setOriginalDocumentsReceivedDate(Date originalDocumentsReceivedDate) {
        this.originalDocumentsReceivedDate = originalDocumentsReceivedDate;
    }

    public String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }

    public String getShippingMode() {
        return shippingMode;
    }

    public void setShippingMode(String shippingMode) {
        this.shippingMode = shippingMode;
    }

    @Override
    public List<AddedCommentDTO> getComments() {
        return comments;
    }

    @Override
    public void setComments(List<AddedCommentDTO> comments) {
        this.comments = comments;
    }

    @Override
    public List getContainers() {
        if (containers == null) {
            containers = new ArrayList();
        }
        return this.containers;
    }

    public void setContainers(List<ShipmentContainerDTO> containers) {
        this.containers = containers;
    }

    public Date getOriginalETA() {
        return originalETA;
    }

    public void setOriginalETA(Date originalETA) {
        this.originalETA = originalETA;
    }

    public String getAirlineName() {
        return airlineName;
    }

    public void setAirlineName(String airlineName) {
        this.airlineName = airlineName;
    }

    public List<ConsignmentDTO> getConsignmentDTOS() {
        return consignmentDTOS;
    }

    public void setConsignmentDTOS(List<ConsignmentDTO> consignmentDTOS) {
        this.consignmentDTOS = consignmentDTOS;
    }

    @Override
    public List<ShipmentFcrNumber> getFcrNumbersForShipment() {
        return fcrNumbersForShipment;
    }

    @Override
    public void setFcrNumbersForShipment(List<ShipmentFcrNumber> fcrNumbersForShipment) {
        this.fcrNumbersForShipment = fcrNumbersForShipment;
    }

    @Override
    public PlaceAddressDTO getConsolidationPointDTO() {
        return consolidationPointDTO;
    }

    @Override
    public void setConsolidationPointDTO(PlaceAddressDTO consolidationPointDTO) {
        this.consolidationPointDTO = consolidationPointDTO;
    }

    @Override
    public Long getId() {
        return id;
    }

    @Override
    public List<EventDTO> getEventDTOList() {
        return eventDTOList;
    }

    @Override
    public void setEventDTOList(List<EventDTO> eventDTOList) {
        this.eventDTOList = eventDTOList;
    }

    @Override
    public List<SubShipmentDTO> getSubShipmentDTOList() {
        return subShipmentDTOList;
    }

    @Override
    public void setSubShipmentDTOList(List<SubShipmentDTO> subShipmentDTOList) {
        this.subShipmentDTOList = subShipmentDTOList;
    }

    @Override
    public void setId(Long id) {
        this.id = id;
    }

    public Date getVesselBerthedDate() {
        return vesselBerthedDate;
    }

    public void setVesselBerthedDate(Date vesselBerthedDate) {
        this.vesselBerthedDate = vesselBerthedDate;
    }

    @Override
    public Date getSettlementDate() {
        return settlementDate;
    }

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

    @Override
    public List<BasicShipmentInvoiceDTO> getCommercialInvoices() {
        return commercialInvoices;
    }

    @Override
    public void setCommercialInvoices(List<BasicShipmentInvoiceDTO> commercialInvoices) {
        this.commercialInvoices = commercialInvoices;
    }

    @Override
    public List<BasicShipmentInvoiceDTO> getServiceProviderInvoices() {
        return serviceProviderInvoices;
    }

    @Override
    public void setServiceProviderInvoices(List<BasicShipmentInvoiceDTO> serviceProviderInvoices) {
        this.serviceProviderInvoices = serviceProviderInvoices;
    }

    @Override
    public String getClearingAgentName() {
        return clearingAgentName;
    }

    @Override
    public void setClearingAgentName(String clearingAgentName) {
        this.clearingAgentName = clearingAgentName;
    }

    @Override
    public String getFreightForwarderName() {
        return freightForwarderName;
    }

    @Override
    public void setFreightForwarderName(String freightForwarderName) {
        this.freightForwarderName = freightForwarderName;
    }

    @Override
    public String getStatusName() {
        return statusName;
    }

    @Override
    public void setStatusName(String statusName) {
        this.statusName = statusName;
    }

}