using Persistence.Models;
using Persistence.Models.Requests;
using Refit;
namespace Persistence.Client.Clients
{
///
/// Интерфейс клиента для хранения технологических сообщений
///
public interface ITechMessagesClient
{
private const string BaseRoute = "/api/techMessages";
[Get($"{BaseRoute}")]
Task>> GetPage([Query] PaginationRequest request, CancellationToken token);
[Post($"{BaseRoute}")]
Task> AddRange([Body] IEnumerable dtos, CancellationToken token);
[Get($"{BaseRoute}/systems")]
Task>> GetSystems(CancellationToken token);
[Get($"{BaseRoute}/range")]
Task> GetDatesRangeAsync(CancellationToken token);
[Get($"{BaseRoute}/part")]
Task>> GetPart(DateTimeOffset dateBegin, int take, CancellationToken token);
[Get($"{BaseRoute}/statistics")]
Task>> GetStatistics([Query] string autoDrillingSystem, [Query] int categoryId, CancellationToken token);
}
}