DD.WellWorkover.Cloud/AsbCloudApp/Services/IDetectedOperationService.cs

68 lines
2.7 KiB
C#
Raw Normal View History

2022-04-28 15:04:13 +05:00
using AsbCloudApp.Data;
using AsbCloudApp.Data.DetectedOperation;
2022-04-28 15:04:13 +05:00
using AsbCloudApp.Requests;
using System.Collections.Generic;
using System.IO;
2022-04-28 15:04:13 +05:00
using System.Threading;
using System.Threading.Tasks;
namespace AsbCloudApp.Services
{
#nullable enable
2022-08-05 17:16:11 +05:00
/// <summary>
/// Сервис автоматически определенных по телеметрии операций
/// </summary>
2022-04-28 15:04:13 +05:00
public interface IDetectedOperationService
{
2022-08-05 17:16:11 +05:00
/// <summary>
/// Список названий операций.
/// Если указан idWell, то возвращается список названий операций найденных на указанной скважине.
/// </summary>
/// <param name="idWell"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<IEnumerable<WellOperationCategoryDto>?> GetCategoriesAsync(int? idWell, CancellationToken token);
2022-08-05 17:16:11 +05:00
/// <summary>
/// Получить автоматически определенные по телеметрии операции с анализом по бурильщикам
/// </summary>
/// <param name="request"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<DetectedOperationListDto?> GetAsync(DetectedOperationRequest request, CancellationToken token);
/// <summary>
/// Получить автоматически определенные по телеметрии операции
/// </summary>
/// <param name="request"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<IEnumerable<DetectedOperationDto>?> GetOperationsAsync(DetectedOperationRequest request, CancellationToken token);
2022-08-05 17:16:11 +05:00
/// <summary>
/// Удалить операции
/// </summary>
/// <param name="request"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<int> DeleteAsync(DetectedOperationRequest request, CancellationToken token);
2022-08-05 17:16:11 +05:00
/// <summary>
/// Статистика по операциям
/// </summary>
/// <param name="request"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<IEnumerable<DetectedOperationStatDto>?> GetOperationsStatAsync(DetectedOperationRequest request, CancellationToken token);
2022-08-05 17:16:11 +05:00
/// <summary>
/// Выгрузка в Excel
/// </summary>
/// <param name="idsWells"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<Stream> ExportAsync(IEnumerable<int> idsWells, CancellationToken token);
2022-04-28 15:04:13 +05:00
}
#nullable disable
2022-04-28 15:04:13 +05:00
}