FinanceOptionsDTO.java

package com.tradecloud.dto.api.plannedshipment;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.tradecloud.dto.order.TradeFinanceDTO;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
public class FinanceOptionsDTO extends TradeFinanceDTO {
    private List<OrderFinanceOptionsDTO> orderTradeFinanceDTOs;
    private String freightForwarder;
    private String shipmentState;
    private BigDecimal maxTenor;


    public FinanceOptionsDTO() {
    }

    public FinanceOptionsDTO(TradeFinanceDTO tradeFinanceDTO) {
        super.setBillOfExchangeMaturityDate(tradeFinanceDTO.getBillOfExchangeMaturityDate());
        super.setMarginPercentage(tradeFinanceDTO.getMarginPercentage());
        super.setPrimeRate(tradeFinanceDTO.getPrimeRate());
        super.setCurrentPrimePlusMargin(tradeFinanceDTO.getCurrentPrimePlusMargin());
        super.setDefaultCreditTerm(tradeFinanceDTO.getDefaultCreditTerm());
        super.setEstimatedSupplierSettlementAmount(tradeFinanceDTO.getEstimatedSupplierSettlementAmount());
        super.setEstimatedSupplierSettlementDate(tradeFinanceDTO.getEstimatedSupplierSettlementDate());
        super.setEstimateTermDays(tradeFinanceDTO.getEstimateTermDays());
        super.setInterest(tradeFinanceDTO.getInterest());
        super.setInterestRate(tradeFinanceDTO.getInterestRate());
        super.setLevel(tradeFinanceDTO.getLevel());
        super.setObjectId(tradeFinanceDTO.getObjectId());
        super.setOrderReference(tradeFinanceDTO.getOrderReference());
        super.setReference(tradeFinanceDTO.getReference());
        super.setServiceFee(tradeFinanceDTO.getServiceFee());
        super.setConfirmingMarginFeePercentage(tradeFinanceDTO.getConfirmingMarginFeePercentage());
        super.setShowCurrentPrimePlus(tradeFinanceDTO.isShowCurrentPrimePlus());
        super.setTotalInterestAndServiceFeeExVat(tradeFinanceDTO.getTotalInterestAndServiceFeeExVat());
        super.setTradeFinance(tradeFinanceDTO.getTradeFinance());
        super.setVatOnServiceFee(tradeFinanceDTO.getVatOnServiceFee());
    }

    public String getShipmentState() {
        return shipmentState;
    }

    public void setShipmentState(String shipmentState) {
        this.shipmentState = shipmentState;
    }

    public List<OrderFinanceOptionsDTO> getOrderTradeFinanceDTOs() {
        if (orderTradeFinanceDTOs == null) {
            orderTradeFinanceDTOs = new ArrayList<>();
        }
        return orderTradeFinanceDTOs;
    }

    public void setOrderTradeFinanceDTOs(List<OrderFinanceOptionsDTO> orderTradeFinanceDTOs) {
        this.orderTradeFinanceDTOs = orderTradeFinanceDTOs;
    }

    public String getFreightForwarder() {
        return freightForwarder;
    }

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

    public BigDecimal getMaxTenor() {
        return maxTenor;
    }

    public void setMaxTenor(BigDecimal maxTenor) {
        this.maxTenor = maxTenor;
    }
}