forked from ddrilling/AsbCloudServer
78 lines
3.2 KiB
C#
78 lines
3.2 KiB
C#
using AsbCloudApp.Data;
|
||
using AsbCloudApp.Data.DetectedOperation;
|
||
using AsbCloudApp.Requests;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.IO;
|
||
using System.Threading;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace AsbCloudApp.Services
|
||
{
|
||
#nullable enable
|
||
/// <summary>
|
||
/// Сервис автоматически определенных по телеметрии операций
|
||
/// </summary>
|
||
public interface IDetectedOperationService
|
||
{
|
||
/// <summary>
|
||
/// Список названий операций.
|
||
/// Если указан idWell, то возвращается список названий операций найденных на указанной скважине.
|
||
/// </summary>
|
||
/// <param name="idWell"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
Task<IEnumerable<WellOperationCategoryDto>?> GetCategoriesAsync(int? idWell, CancellationToken token);
|
||
|
||
/// <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);
|
||
|
||
/// <summary>
|
||
/// Удалить операции
|
||
/// </summary>
|
||
/// <param name="gtDate"></param>
|
||
/// <param name="ltDate"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns>кортеж - ид телеметрии, интервалы глубины забоя </returns>
|
||
Task<IEnumerable<(int,double, double)>?> GetDepthIntervalAllOperationsAsync(DateTimeOffset gtDate, DateTimeOffset ltDate, CancellationToken token);
|
||
|
||
/// <summary>
|
||
/// Удалить операции
|
||
/// </summary>
|
||
/// <param name="request"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
Task<int> DeleteAsync(DetectedOperationRequest request, CancellationToken token);
|
||
|
||
/// <summary>
|
||
/// Статистика по операциям
|
||
/// </summary>
|
||
/// <param name="request"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
Task<IEnumerable<DetectedOperationStatDto>?> GetOperationsStatAsync(DetectedOperationRequest request, CancellationToken token);
|
||
|
||
/// <summary>
|
||
/// Выгрузка в Excel
|
||
/// </summary>
|
||
/// <param name="idsWells"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
Task<Stream> ExportAsync(IEnumerable<int> idsWells, CancellationToken token);
|
||
}
|
||
#nullable disable
|
||
}
|