diff --git a/AsbCloudApp/Requests/ExportOptions/IExportOptionsRequest.cs b/AsbCloudApp/Requests/ExportOptions/IExportOptionsRequest.cs new file mode 100644 index 00000000..8d65572b --- /dev/null +++ b/AsbCloudApp/Requests/ExportOptions/IExportOptionsRequest.cs @@ -0,0 +1,8 @@ +namespace AsbCloudApp.Requests.ExportOptions; + +/// +/// Параметры экспорта +/// +public interface IExportOptionsRequest +{ +} \ No newline at end of file diff --git a/AsbCloudApp/Requests/ExportOptions/WellRelatedExportRequest.cs b/AsbCloudApp/Requests/ExportOptions/WellRelatedExportRequest.cs new file mode 100644 index 00000000..63b185cd --- /dev/null +++ b/AsbCloudApp/Requests/ExportOptions/WellRelatedExportRequest.cs @@ -0,0 +1,21 @@ +namespace AsbCloudApp.Requests.ExportOptions; + +/// +/// Параметры экспорта +/// +public class WellRelatedExportRequest : IExportOptionsRequest +{ + /// + /// Конструктор + /// + /// Id скважины + public WellRelatedExportRequest(int idWell) + { + IdWell = idWell; + } + + /// + /// Id скважины + /// + public int IdWell { get; } +} \ No newline at end of file diff --git a/AsbCloudApp/Services/IExportService.cs b/AsbCloudApp/Services/IExportService.cs new file mode 100644 index 00000000..b921fec5 --- /dev/null +++ b/AsbCloudApp/Services/IExportService.cs @@ -0,0 +1,21 @@ +using System.IO; +using System.Threading; +using System.Threading.Tasks; +using AsbCloudApp.Requests.ExportOptions; + +namespace AsbCloudApp.Services; + +/// +/// Экспорт данных +/// +public interface IExportService + where TOptions : IExportOptionsRequest +{ + /// + /// Экспортировать данные + /// + /// + /// + /// + Task<(string FileName, Stream File)> ExportAsync(TOptions options, CancellationToken token); +} \ No newline at end of file diff --git a/AsbCloudApp/Services/IProcessMapPlanExportService.cs b/AsbCloudApp/Services/IProcessMapPlanExportService.cs deleted file mode 100644 index 6c226a55..00000000 --- a/AsbCloudApp/Services/IProcessMapPlanExportService.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System.IO; -using System.Threading; -using System.Threading.Tasks; - -namespace AsbCloudApp.Services; - -/// -/// Экспорт РТК -/// -public interface IProcessMapPlanExportService -{ - /// - /// Экспортировать РТК по скважине - /// - /// - /// - /// - Task<(string FileName, Stream File)> ExportAsync(int idWell, CancellationToken token); -} \ No newline at end of file diff --git a/AsbCloudApp/Services/ITrajectoryExportService.cs b/AsbCloudApp/Services/ITrajectoryExportService.cs deleted file mode 100644 index 610ccf9f..00000000 --- a/AsbCloudApp/Services/ITrajectoryExportService.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System.IO; -using System.Threading; -using System.Threading.Tasks; - -namespace AsbCloudApp.Services; - -/// -/// Экспорт траекторий -/// -public interface ITrajectoryExportService -{ - /// - /// Экспортировать траектории по скважине - /// - /// - /// - /// - Task<(string FileName, Stream File)> ExportAsync(int idWell, CancellationToken token); -} \ No newline at end of file