package de.avatic.lcc.dto.configuration.rates;

import com.fasterxml.jackson.annotation.JsonProperty;
import de.avatic.lcc.dto.generic.NodeDTO;
import de.avatic.lcc.dto.generic.TransportType;
import de.avatic.lcc.dto.generic.ValidityPeriodDTO;

import java.util.HashMap;

public class ContainerRateDTO {

    private Integer id;

    private NodeDTO source;

    private NodeDTO destination;

    private TransportType type;

    private HashMap<String, Number> rates;

    @JsonProperty("lead_time")
    private Number leadTime;

    @JsonProperty("validity_period")
    private ValidityPeriodDTO validityPeriod;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public NodeDTO getSource() {
        return source;
    }

    public void setSource(NodeDTO source) {
        this.source = source;
    }

    public NodeDTO getDestination() {
        return destination;
    }

    public void setDestination(NodeDTO destination) {
        this.destination = destination;
    }

    public TransportType getType() {
        return type;
    }

    public void setType(TransportType type) {
        this.type = type;
    }

    public HashMap<String, Number> getRates() {
        return rates;
    }

    public void setRates(HashMap<String, Number> rates) {
        this.rates = rates;
    }

    public Number getLeadTime() {
        return leadTime;
    }

    public void setLeadTime(Number leadTime) {
        this.leadTime = leadTime;
    }

    public ValidityPeriodDTO getValidityPeriod() {
        return validityPeriod;
    }

    public void setValidityPeriod(ValidityPeriodDTO validityPeriod) {
        this.validityPeriod = validityPeriod;
    }
}
