From 5d71ff7393e64ce1355d63a464bfa3966368170e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D1=82=D0=B5=D0=BF=D0=B0=D0=BD=D0=BE=D0=B2=20=D0=94?= =?UTF-8?q?=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9?= Date: Mon, 9 Oct 2023 15:22:13 +0500 Subject: [PATCH] =?UTF-8?q?=D0=90=D0=B1=D1=81=D1=82=D1=80=D0=B0=D0=BA?= =?UTF-8?q?=D1=86=D0=B8=D0=B8=20=D1=81=D0=B5=D1=80=D0=B2=D0=B8=D1=81=D0=BE?= =?UTF-8?q?=D0=B2=20=D0=B8=20=D1=80=D0=B5=D0=BF=D0=BE=D0=B7=D0=B8=D1=82?= =?UTF-8?q?=D0=BE=D1=80=D0=B8=D0=B5=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Repositories/IProcessMapRepository.cs | 43 ------------------- ...ProcessMapWellboreDevelopmentRepository.cs | 23 ---------- .../Repositories/IWellCompositeRepository.cs | 6 +-- .../IWellDrillingProcessMapRepository.cs | 30 +++++++++++++ .../IWellReamProcessMapRepository.cs | 22 ++++++++++ AsbCloudApp/Requests/ProcessMapRequest.cs | 25 ----------- .../Requests/WellDrillingProcessMapRequest.cs | 24 +++++++++++ .../Requests/WellReamProcessMapRequest.cs | 19 ++++++++ .../Services/IProcessMapPlanImportService.cs | 37 ---------------- .../Services/IProcessMapReportMakerService.cs | 20 --------- AsbCloudApp/Services/IProcessMapService.cs | 21 --------- .../IProcessMapWellboreDevelopmentService.cs | 39 ----------------- .../Services/IRepositoryWellRelated.cs | 8 ++++ .../ProcessMaps/IProcessMapImportService.cs | 37 ++++++++++++++++ .../IProcessMapReportExportService.cs | 19 ++++++++ .../IWellDrillingProcessMapReportService.cs | 20 +++++++++ 16 files changed, 182 insertions(+), 211 deletions(-) delete mode 100644 AsbCloudApp/Repositories/IProcessMapRepository.cs delete mode 100644 AsbCloudApp/Repositories/IProcessMapWellboreDevelopmentRepository.cs create mode 100644 AsbCloudApp/Repositories/IWellDrillingProcessMapRepository.cs create mode 100644 AsbCloudApp/Repositories/IWellReamProcessMapRepository.cs delete mode 100644 AsbCloudApp/Requests/ProcessMapRequest.cs create mode 100644 AsbCloudApp/Requests/WellDrillingProcessMapRequest.cs create mode 100644 AsbCloudApp/Requests/WellReamProcessMapRequest.cs delete mode 100644 AsbCloudApp/Services/IProcessMapPlanImportService.cs delete mode 100644 AsbCloudApp/Services/IProcessMapReportMakerService.cs delete mode 100644 AsbCloudApp/Services/IProcessMapService.cs delete mode 100644 AsbCloudApp/Services/IProcessMapWellboreDevelopmentService.cs create mode 100644 AsbCloudApp/Services/ProcessMaps/IProcessMapImportService.cs create mode 100644 AsbCloudApp/Services/ProcessMaps/IProcessMapReportExportService.cs create mode 100644 AsbCloudApp/Services/ProcessMaps/WellDrillingProcessMap/IWellDrillingProcessMapReportService.cs diff --git a/AsbCloudApp/Repositories/IProcessMapRepository.cs b/AsbCloudApp/Repositories/IProcessMapRepository.cs deleted file mode 100644 index f6dbe6b4..00000000 --- a/AsbCloudApp/Repositories/IProcessMapRepository.cs +++ /dev/null @@ -1,43 +0,0 @@ -using AsbCloudApp.Data.ProcessMap; -using AsbCloudApp.Requests; -using AsbCloudApp.Services; -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; - -namespace AsbCloudApp.Repositories -{ - /// - /// РТК-план - /// - public interface IProcessMapPlanRepository : IRepositoryWellRelated - { - /// - /// Получить РТК-план начиная с даты. - /// - /// - /// - /// - /// - Task> GetAllAsync(int idWell, - DateTime? updateFrom, CancellationToken token = default); - - /// - /// Получить РТК-план - /// - /// - /// - /// - Task> GetProcessMapAsync(IEnumerable requests, - CancellationToken token); - - /// - /// Удалить РТК-план по скважине - /// - /// - /// - /// - Task RemoveByWellAsync(int idWell, CancellationToken cancellationToken); - } -} \ No newline at end of file diff --git a/AsbCloudApp/Repositories/IProcessMapWellboreDevelopmentRepository.cs b/AsbCloudApp/Repositories/IProcessMapWellboreDevelopmentRepository.cs deleted file mode 100644 index 11e8607e..00000000 --- a/AsbCloudApp/Repositories/IProcessMapWellboreDevelopmentRepository.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using AsbCloudApp.Data.ProcessMap; -using AsbCloudApp.Services; - -namespace AsbCloudApp.Repositories; - -/// -/// Репозиторий для проработки скважины -/// -public interface IProcessMapWellboreDevelopmentRepository : IRepositoryWellRelated -{ - /// - /// Получить проработку начиная с даты - /// - /// - /// - /// - /// - Task> GetAllAsync(int idWell, DateTime? updateFrom, CancellationToken cancellationToken); -} \ No newline at end of file diff --git a/AsbCloudApp/Repositories/IWellCompositeRepository.cs b/AsbCloudApp/Repositories/IWellCompositeRepository.cs index c54c7e27..103337ac 100644 --- a/AsbCloudApp/Repositories/IWellCompositeRepository.cs +++ b/AsbCloudApp/Repositories/IWellCompositeRepository.cs @@ -1,8 +1,8 @@ using AsbCloudApp.Data; -using AsbCloudApp.Data.ProcessMap; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using AsbCloudApp.Data.ProcessMaps; namespace AsbCloudApp.Repositories { @@ -29,11 +29,11 @@ namespace AsbCloudApp.Repositories Task SaveAsync(int idWell, IEnumerable wellComposites, CancellationToken token); /// - /// Получение РТК по композитной скважине + /// Получение РТК бурение по композитной скважине /// /// /// /// - Task> GetCompositeProcessMap(int idWell, CancellationToken token); + Task> GetCompositeProcessMap(int idWell, CancellationToken token); } } diff --git a/AsbCloudApp/Repositories/IWellDrillingProcessMapRepository.cs b/AsbCloudApp/Repositories/IWellDrillingProcessMapRepository.cs new file mode 100644 index 00000000..105f24b3 --- /dev/null +++ b/AsbCloudApp/Repositories/IWellDrillingProcessMapRepository.cs @@ -0,0 +1,30 @@ +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using AsbCloudApp.Data.ProcessMaps; +using AsbCloudApp.Requests; +using AsbCloudApp.Services; + +namespace AsbCloudApp.Repositories; + +/// +/// РТК бурение скважины +/// +public interface IWellDrillingProcessMapRepository : IRepositoryWellRelated +{ + /// + /// Получить РТК бурение по параметрам + /// + /// + /// + /// + Task> GetAsync(WellDrillingProcessMapRequest request, CancellationToken cancellationToken); + + /// + /// Получить РТК бурение по коллекции параметров + /// + /// + /// + /// + Task> GetAsync(IEnumerable requests, CancellationToken cancellationToken); +} \ No newline at end of file diff --git a/AsbCloudApp/Repositories/IWellReamProcessMapRepository.cs b/AsbCloudApp/Repositories/IWellReamProcessMapRepository.cs new file mode 100644 index 00000000..dc1ac920 --- /dev/null +++ b/AsbCloudApp/Repositories/IWellReamProcessMapRepository.cs @@ -0,0 +1,22 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using System.Threading; +using AsbCloudApp.Data.ProcessMaps; +using AsbCloudApp.Requests; +using AsbCloudApp.Services; + +namespace AsbCloudApp.Repositories; + +/// +/// РТК проработки +/// +public interface IWellReamProcessMapRepository : IRepositoryWellRelated +{ + /// + /// Получить РТК проработки по параметрам + /// + /// + /// + /// + Task> GetAsync(WellReamProcessMapRequest request, CancellationToken cancellationToken); +} \ No newline at end of file diff --git a/AsbCloudApp/Requests/ProcessMapRequest.cs b/AsbCloudApp/Requests/ProcessMapRequest.cs deleted file mode 100644 index 8fc481e4..00000000 --- a/AsbCloudApp/Requests/ProcessMapRequest.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; - -namespace AsbCloudApp.Requests -{ - /// - /// Параметры для запроса получения РТК - /// - public class ProcessMapRequest - { - /// - /// Идентификатор скважины - /// - public int IdWell { get; set; } - - /// - /// Тип секции - /// - public int? IdWellSectionType { get; set; } - - /// - /// Дата обновления - /// - public DateTime? UpdateFrom { get; set; } - } -} diff --git a/AsbCloudApp/Requests/WellDrillingProcessMapRequest.cs b/AsbCloudApp/Requests/WellDrillingProcessMapRequest.cs new file mode 100644 index 00000000..2c8eb150 --- /dev/null +++ b/AsbCloudApp/Requests/WellDrillingProcessMapRequest.cs @@ -0,0 +1,24 @@ +using System; + +namespace AsbCloudApp.Requests; + +/// +/// Запрос для получения РТК бурение +/// +public class WellDrillingProcessMapRequest +{ + /// + /// Идентификатор скважины + /// + public int IdWell { get; set; } + + /// + /// Тип секции + /// + public int? IdWellSectionType { get; set; } + + /// + /// Дата обновления + /// + public DateTime? UpdateFrom { get; set; } +} \ No newline at end of file diff --git a/AsbCloudApp/Requests/WellReamProcessMapRequest.cs b/AsbCloudApp/Requests/WellReamProcessMapRequest.cs new file mode 100644 index 00000000..850feca8 --- /dev/null +++ b/AsbCloudApp/Requests/WellReamProcessMapRequest.cs @@ -0,0 +1,19 @@ +using System; + +namespace AsbCloudApp.Requests; + +/// +/// Запрос для получения РТК проработки +/// +public class WellReamProcessMapRequest +{ + /// + /// Идентификатор скважины + /// + public int IdWell { get; set; } + + /// + /// Дата обновления + /// + public DateTime? UpdateFrom { get; set; } +} \ No newline at end of file diff --git a/AsbCloudApp/Services/IProcessMapPlanImportService.cs b/AsbCloudApp/Services/IProcessMapPlanImportService.cs deleted file mode 100644 index c5daa587..00000000 --- a/AsbCloudApp/Services/IProcessMapPlanImportService.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System.IO; -using System.Threading; -using System.Threading.Tasks; - -namespace AsbCloudApp.Services; - -/// -/// Сервис импорта/экспорта для РТК вводимых вручную -/// -public interface IProcessMapPlanImportService -{ - /// - /// Загрузить данные из файла - /// - /// - /// - /// - /// - /// - /// - Task ImportAsync(int idWell, int idUser, bool deleteProcessMapPlansBeforeImport, Stream stream, - CancellationToken cancellationToken); - - /// - /// Сформировать файл с данными - /// - /// - /// - /// - Task ExportAsync(int idWell, CancellationToken cancellationToken); - - /// - /// Получение шаблона для заполнения - /// - /// - Task GetExcelTemplateStreamAsync(CancellationToken cancellationToken); -} \ No newline at end of file diff --git a/AsbCloudApp/Services/IProcessMapReportMakerService.cs b/AsbCloudApp/Services/IProcessMapReportMakerService.cs deleted file mode 100644 index 0fea6d7b..00000000 --- a/AsbCloudApp/Services/IProcessMapReportMakerService.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System.IO; -using System.Threading; -using System.Threading.Tasks; - -namespace AsbCloudApp.Services -{ - /// - /// Сервис формирования РТК. - /// - public interface IProcessMapReportMakerService - { - /// - /// Сформировать. - /// - /// - /// - /// - Task MakeReportAsync(int idWell, CancellationToken token = default); - } -} diff --git a/AsbCloudApp/Services/IProcessMapService.cs b/AsbCloudApp/Services/IProcessMapService.cs deleted file mode 100644 index 3534b2e2..00000000 --- a/AsbCloudApp/Services/IProcessMapService.cs +++ /dev/null @@ -1,21 +0,0 @@ -using AsbCloudApp.Data.ProcessMap; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; - -namespace AsbCloudApp.Services -{ - /// - /// Сервис РТК - /// - public interface IProcessMapService - { - /// - /// Получение моделей РТК - /// - /// - /// - /// - Task> GetProcessMapReportAsync(int idWell, CancellationToken token); - } -} diff --git a/AsbCloudApp/Services/IProcessMapWellboreDevelopmentService.cs b/AsbCloudApp/Services/IProcessMapWellboreDevelopmentService.cs deleted file mode 100644 index 6a03e957..00000000 --- a/AsbCloudApp/Services/IProcessMapWellboreDevelopmentService.cs +++ /dev/null @@ -1,39 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using AsbCloudApp.Data.ProcessMap; - -namespace AsbCloudApp.Services; - -/// -/// Сервис для проработок скважины -/// -public interface IProcessMapWellboreDevelopmentService -{ - /// - /// Добавить запись проработки - /// - /// - /// - /// - Task InsertAsync(ProcessMapWellboreDevelopmentDto processMapWellboreDevelopment, CancellationToken cancellationToken); - - /// - /// Обновить запись проработки - /// - /// - /// - /// - Task UpdateAsync(ProcessMapWellboreDevelopmentDto processMapWellboreDevelopment, CancellationToken cancellationToken); - - /// - /// Получить записи проработок по уникальному ключу телеметрии - /// - /// - /// - /// - /// - Task> GetByTelemetryAsync(string uid, DateTime updateFrom, - CancellationToken cancellationToken); -} \ No newline at end of file diff --git a/AsbCloudApp/Services/IRepositoryWellRelated.cs b/AsbCloudApp/Services/IRepositoryWellRelated.cs index 9c771657..84dd3d71 100644 --- a/AsbCloudApp/Services/IRepositoryWellRelated.cs +++ b/AsbCloudApp/Services/IRepositoryWellRelated.cs @@ -21,6 +21,14 @@ namespace AsbCloudApp.Services /// emptyList if nothing found Task> GetByIdWellAsync(int idWell, CancellationToken token); + /// + /// Удалить записи связанных со скважиной + /// + /// + /// + /// + Task RemoveByWellAsync(int idWell, CancellationToken cancellationToken); + /// /// Получение всех записей по нескольким скважинам /// diff --git a/AsbCloudApp/Services/ProcessMaps/IProcessMapImportService.cs b/AsbCloudApp/Services/ProcessMaps/IProcessMapImportService.cs new file mode 100644 index 00000000..03a57085 --- /dev/null +++ b/AsbCloudApp/Services/ProcessMaps/IProcessMapImportService.cs @@ -0,0 +1,37 @@ +using System.IO; +using System.Threading.Tasks; +using System.Threading; + +namespace AsbCloudApp.Services.ProcessMaps; + +/// +/// Сервис импорта РТК +/// +public interface IProcessMapImportService +{ + /// + /// Загрузить данные из файла + /// + /// + /// + /// + /// + /// + /// + Task ImportAsync(int idWell, int idUser, bool deleteBeforeImport, Stream stream, + CancellationToken cancellationToken); + + /// + /// Сформировать файл с данными + /// + /// + /// + /// + Task<(string Name, Stream File)> ExportAsync(int idWell, CancellationToken cancellationToken); + + /// + /// Получение шаблона для заполнения + /// + /// + Task<(string Name, Stream File)> GetExcelTemplateStreamAsync(CancellationToken cancellationToken); +} \ No newline at end of file diff --git a/AsbCloudApp/Services/ProcessMaps/IProcessMapReportExportService.cs b/AsbCloudApp/Services/ProcessMaps/IProcessMapReportExportService.cs new file mode 100644 index 00000000..ff1edeff --- /dev/null +++ b/AsbCloudApp/Services/ProcessMaps/IProcessMapReportExportService.cs @@ -0,0 +1,19 @@ +using System.IO; +using System.Threading.Tasks; +using System.Threading; + +namespace AsbCloudApp.Services.ProcessMaps; + +/// +/// Сервис экспорт РТК +/// +public interface IProcessMapReportExportService +{ + /// + /// Сформировать файл с данными + /// + /// + /// + /// + Task<(string Name, Stream File)?> ExportAsync(int idWell, CancellationToken cancellationToken); +} \ No newline at end of file diff --git a/AsbCloudApp/Services/ProcessMaps/WellDrillingProcessMap/IWellDrillingProcessMapReportService.cs b/AsbCloudApp/Services/ProcessMaps/WellDrillingProcessMap/IWellDrillingProcessMapReportService.cs new file mode 100644 index 00000000..be52a135 --- /dev/null +++ b/AsbCloudApp/Services/ProcessMaps/WellDrillingProcessMap/IWellDrillingProcessMapReportService.cs @@ -0,0 +1,20 @@ +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using AsbCloudApp.Data.ProcessMaps.Report; + +namespace AsbCloudApp.Services.ProcessMaps.WellDrillingProcessMap; + +/// +/// Сервис формирования РТК +/// +public interface IWellDrillingProcessMapReportService +{ + /// + /// Получить отчёт РТК по бурению + /// + /// + /// + /// + Task> GetAsync(int idWell, CancellationToken token); +} \ No newline at end of file