package de.avatic.lcc.dto.report;

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

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

public class ReportDTO {

    MaterialDTO material;

    @JsonProperty("start_date")
    private LocalDateTime startDate;

    @JsonProperty("end_date")
    private LocalDateTime endDate;

    NodeDTO supplier;

    @JsonProperty("costs")
    public Map<String, ReportEntryDTO> cost;

    @JsonProperty("risk")
    public Map<String, ReportEntryDTO> risk;

    @JsonProperty("premises")
    public List<ReportDestinationDTO> destinations;

    public NodeDTO getSupplier() {
        return supplier;
    }

    public void setSupplier(NodeDTO supplier) {
        this.supplier = supplier;
    }

    public void setDestinations(List<ReportDestinationDTO> destinations) {
        this.destinations = destinations;
    }

    public Map<String, ReportEntryDTO> getCost() {
        return cost;
    }

    public void setCost(Map<String, ReportEntryDTO> cost) {
        this.cost = cost;
    }

    public Map<String, ReportEntryDTO> getRisk() {
        return risk;
    }

    public void setRisk(Map<String, ReportEntryDTO> risk) {
        this.risk = risk;
    }

    public List<ReportDestinationDTO> getDestinations() {
        return destinations;
    }

    public void setDestination(List<ReportDestinationDTO> destinations) {
        this.destinations = destinations;
    }

    public MaterialDTO getMaterial() {
        return material;
    }

    public void setMaterial(MaterialDTO material) {
        this.material = material;
    }

    public LocalDateTime getStartDate() {
        return startDate;
    }

    public void setStartDate(LocalDateTime startDate) {
        this.startDate = startDate;
    }

    public LocalDateTime getEndDate() {
        return endDate;
    }

    public void setEndDate(LocalDateTime endDate) {
        this.endDate = endDate;
    }
}
