using Persistence.Models; using Refit; namespace Persistence.Client.Clients; /// <summary> /// Интерфейс клиента для работы с уставками /// </summary> public interface ISetpointClient { private const string BaseRoute = "/api/setpoint"; [Get($"{BaseRoute}/current")] Task<IApiResponse<IEnumerable<SetpointValueDto>>> GetCurrent([Query(CollectionFormat.Multi)] IEnumerable<Guid> setpointKeys); [Get($"{BaseRoute}/history")] Task<IApiResponse<IEnumerable<SetpointValueDto>>> GetHistory([Query(CollectionFormat.Multi)] IEnumerable<Guid> setpointKeys, [Query] DateTimeOffset historyMoment); [Get($"{BaseRoute}/log")] Task<IApiResponse<Dictionary<Guid, IEnumerable<SetpointLogDto>>>> GetLog([Query(CollectionFormat.Multi)] IEnumerable<Guid> setpointKeys); [Get($"{BaseRoute}/range")] Task<IApiResponse<DatesRangeDto>> GetDatesRangeAsync(CancellationToken token); [Get($"{BaseRoute}/part")] Task<IApiResponse<IEnumerable<SetpointLogDto>>> GetPart(DateTimeOffset dateBegin, int take, CancellationToken token); [Post($"{BaseRoute}/")] Task<IApiResponse> Add(Guid setpointKey, object newValue); }