using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ZooContracts.BindingModels;

namespace ZooContracts.BusinessLogicsContracts
{
    public interface IReportLogic
    {
        /// <summary>
		/// Получение списка маршрутов по заповедникам
		/// </summary>
		/// <returns></returns>
		List<ReportRouteRoutesViewModel> GetRouteRoutes(ReportBindingModel model);
        /// <summary>
        /// Получение списка затрат за определенный период
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        List<ReportCostsInRoutesViewModel> GetCosts(ReportBindingModel model);
        /// <summary>
        /// Сохранение компонент в файл-Word
        /// </summary>
        /// <param name="model"></param>
        void SaveComponentsToWordFile(ReportBindingModel model);
        /// <summary>
        /// Сохранение компонент с указаеним продуктов в файл-Excel
        /// </summary>
        /// <param name="model"></param>
        void SaveManufactureComponentToExcelFile(ReportBindingModel model);
        /// <summary>
        /// Сохранение заказов в файл-Pdf
        /// </summary>
        /// <param name="model"></param>
        void SaveOrdersToPdfFile(ReportBindingModel model);
    }
}
