diff --git a/AsbCloudApp/Data/DetectedOperationDto.cs b/AsbCloudApp/Data/DetectedOperationDto.cs
index bdcb50b4..0e5cdb8f 100644
--- a/AsbCloudApp/Data/DetectedOperationDto.cs
+++ b/AsbCloudApp/Data/DetectedOperationDto.cs
@@ -5,16 +5,12 @@ namespace AsbCloudApp.Data
///
/// Автоматически определяемая операция
///
- public class DetectedOperationDto
+ public class DetectedOperationDto : IId, IWellRelated
{
- ///
- /// Id в БД
- ///
+ ///
public int Id { get; set; }
- ///
- /// Id скважины
- ///
+ ///
public int IdWell { get; set; }
///
diff --git a/AsbCloudApp/Data/DrillFlowChartDto.cs b/AsbCloudApp/Data/DrillFlowChartDto.cs
index af6dfe8d..7f6337a5 100644
--- a/AsbCloudApp/Data/DrillFlowChartDto.cs
+++ b/AsbCloudApp/Data/DrillFlowChartDto.cs
@@ -5,16 +5,12 @@ namespace AsbCloudApp.Data
///
/// ( )
///
- public class DrillFlowChartDto : IId
+ public class DrillFlowChartDto : IId, IWellRelated
{
- ///
///
- ///
public int Id { get; set; }
- ///
- /// Id
- ///
+ ///
public int IdWell { get; set; }
///
diff --git a/AsbCloudApp/Data/DrillParamsDto.cs b/AsbCloudApp/Data/DrillParamsDto.cs
index 4e718f89..0d667a58 100644
--- a/AsbCloudApp/Data/DrillParamsDto.cs
+++ b/AsbCloudApp/Data/DrillParamsDto.cs
@@ -1,45 +1,105 @@
namespace AsbCloudApp.Data
{
- public class DrillParamsDto : IId
+
+ ///
+ /// DTO
+ ///
+ public class DrillParamsDto : IId, IWellRelated
{
+ ///
public int Id { get; set; }
+ ///
public int IdWell { get; set; }
+ ///
+ ///
+ ///
public double DepthStart { get; set; }
+ ///
+ ///
+ ///
public double DepthEnd { get; set; }
+ ///
+ /// id well section type.
+ ///
public int IdWellSectionType { get; set; }
+ ///
+ /// axial load min.
+ ///
public double AxialLoadMin { get; set; }
+ ///
+ /// axial load avg.
+ ///
public double AxialLoadAvg { get; set; }
+ ///
+ /// axial load max.
+ ///
public double AxialLoadMax { get; set; }
+ ///
+ /// pressure min.
+ ///
public double PressureMin { get; set; }
+ ///
+ /// pressure avg.
+ ///
public double PressureAvg { get; set; }
+ ///
+ /// pressure max.
+ ///
public double PressureMax { get; set; }
+ ///
+ /// rotor torque min.
+ ///
public double RotorTorqueMin { get; set; }
+ ///
+ /// rotor torque avg.
+ ///
public double RotorTorqueAvg { get; set; }
+ ///
+ /// rotor torque max.
+ ///
public double RotorTorqueMax { get; set; }
+ ///
+ /// rotor speed min.
+ ///
public double RotorSpeedMin { get; set; }
+ ///
+ /// rotor speed avg.
+ ///
public double RotorSpeedAvg { get; set; }
+ ///
+ /// rotor speed max.
+ ///
public double RotorSpeedMax { get; set; }
+ ///
+ /// flow min.
+ ///
public double FlowMin { get; set; }
+ ///
+ /// flow avg.
+ ///
public double FlowAvg { get; set; }
+ ///
+ /// flow max.
+ ///
public double FlowMax { get; set; }
}
}
\ No newline at end of file
diff --git a/AsbCloudApp/Data/DrillingProgramStateDto.cs b/AsbCloudApp/Data/DrillingProgramStateDto.cs
index 93f5282c..9a4efb2d 100644
--- a/AsbCloudApp/Data/DrillingProgramStateDto.cs
+++ b/AsbCloudApp/Data/DrillingProgramStateDto.cs
@@ -2,6 +2,9 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO состояния формирования программы бурения
+ ///
public class DrillingProgramStateDto
{
///
@@ -11,15 +14,41 @@ namespace AsbCloudApp.Data
/// 3 - готова
///
public int IdState { get; set; }
+
+ ///
+ /// Ошибка при формировании
+ ///
public DrillingProgramCreateError Error { get; set; }
+
+ ///
+ /// Файл сформированной программы бурения
+ ///
public FileInfoDto Program { get; set; }
+
+ ///
+ /// Разрешение редактировать части программы бурения
+ ///
public bool PermissionToEdit { get; set; }
+
+ ///
+ /// Список частей программы бурения
+ ///
public IEnumerable Parts { get; set; }
}
+ ///
+ /// DTO ошибки при создании программы бурения
+ ///
public class DrillingProgramCreateError
{
+ ///
+ /// Текст ошибки для отображения пользователю
+ ///
public string Message { get; set; }
+
+ ///
+ /// Текст ошибки для разработчика
+ ///
public string Exception { get; set; }
}
}
diff --git a/AsbCloudApp/Data/FileCategoryDto.cs b/AsbCloudApp/Data/FileCategoryDto.cs
index 3991419c..d21a558c 100644
--- a/AsbCloudApp/Data/FileCategoryDto.cs
+++ b/AsbCloudApp/Data/FileCategoryDto.cs
@@ -1,9 +1,21 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO категории файла
+ ///
public class FileCategoryDto : IId
{
+ ///
public int Id { get; set; }
+
+ ///
+ /// полное название
+ ///
public string Name { get; set; }
+
+ ///
+ /// сокращенное название
+ ///
public string ShortName { get; set; }
}
}
diff --git a/AsbCloudApp/Data/FileInfoDto.cs b/AsbCloudApp/Data/FileInfoDto.cs
index b4563462..e85c6193 100644
--- a/AsbCloudApp/Data/FileInfoDto.cs
+++ b/AsbCloudApp/Data/FileInfoDto.cs
@@ -3,17 +3,55 @@ using System.Collections.Generic;
namespace AsbCloudApp.Data
{
- public class FileInfoDto : IId
+ ///
+ /// DTO информации о файле. Используется для загрузки файла.
+ ///
+ public class FileInfoDto : IId, IWellRelated
{
+ ///
public int Id { get; set; }
+
+ ///
public int IdWell { get; set; }
+
+ ///
+ /// id категории файла
+ ///
public int IdCategory { get; set; }
+
+ ///
+ /// Id автора
+ ///
public int? IdAuthor { get; set; }
+
+ ///
+ /// имя файла
+ ///
public string Name { get; set; }
+
+ ///
+ /// дата загрузки
+ ///
public DateTime UploadDate { get; set; }
+
+ ///
+ /// размер в байтах
+ ///
public long Size { get; set; }
+
+ ///
+ /// инфо о публикации файла на гугл диске
+ ///
public FilePublishInfoDto PublishInfo { get; set; }
+
+ ///
+ /// DTO автора
+ ///
public UserDto Author { get; set; }
+
+ ///
+ /// список отметок файла
+ ///
public IEnumerable FileMarks { get; set; }
}
}
diff --git a/AsbCloudApp/Data/FileMarkDto.cs b/AsbCloudApp/Data/FileMarkDto.cs
index 786ccf69..5e1504f2 100644
--- a/AsbCloudApp/Data/FileMarkDto.cs
+++ b/AsbCloudApp/Data/FileMarkDto.cs
@@ -2,22 +2,41 @@ using System;
namespace AsbCloudApp.Data
{
- public class FileMarkDto
+ ///
+ ///
+ ///
+ public class FileMarkDto: IId
{
+ ///
public int Id { get; set; }
+
+ ///
+ /// id
+ ///
public int IdFile { get; set; }
+
///
/// 0 -
/// 1 -
///
public int IdMarkType { get; set; }
+
///
/// / .
/// .
///
public DateTime DateCreated { get; set; }
+
+ ///
+ ///
+ ///
public string Comment { get; set; }
+
+ ///
+ ///
+ ///
public bool IsDeleted { get; set; }
+
///
/// .
/// .
diff --git a/AsbCloudApp/Data/FilePublishInfoDto.cs b/AsbCloudApp/Data/FilePublishInfoDto.cs
index 26e7f80b..5a3fd6d2 100644
--- a/AsbCloudApp/Data/FilePublishInfoDto.cs
+++ b/AsbCloudApp/Data/FilePublishInfoDto.cs
@@ -2,10 +2,24 @@ using System;
namespace AsbCloudApp.Data
{
+ ///
+ ///
+ ///
public class FilePublishInfoDto
{
+ ///
+ ///
+ ///
public string PublisherLogin { get; set; }
+
+ ///
+ ///
+ ///
public DateTime Date { get; set; }
+
+ ///
+ ///
+ ///
public string WebStorageFileUrl { get; set; }
}
}
\ No newline at end of file
diff --git a/AsbCloudApp/Data/ITelemetryData.cs b/AsbCloudApp/Data/ITelemetryData.cs
index 2838aef0..95c69c61 100644
--- a/AsbCloudApp/Data/ITelemetryData.cs
+++ b/AsbCloudApp/Data/ITelemetryData.cs
@@ -3,15 +3,21 @@
namespace AsbCloudApp.Data
{
///
- /// Интерфейс записи данных телеметрии
+ /// Telemetry related dto
///
- public interface ITelemetryData
+ public interface ITelemetryRelated
{
///
/// ИД телеметрии
///
int IdTelemetry { get; set; }
+ }
+ ///
+ /// Интерфейс записи данных телеметрии
+ ///
+ public interface ITelemetryData: ITelemetryRelated
+ {
///
/// Отметка времени для этой записи
///
diff --git a/AsbCloudApp/Data/IWellRelated.cs b/AsbCloudApp/Data/IWellRelated.cs
new file mode 100644
index 00000000..28c42911
--- /dev/null
+++ b/AsbCloudApp/Data/IWellRelated.cs
@@ -0,0 +1,13 @@
+namespace AsbCloudApp.Data
+{
+ ///
+ /// Well related DTO
+ ///
+ public interface IWellRelated
+ {
+ ///
+ /// Well id in db
+ ///
+ public int IdWell { get; set; }
+ }
+}
diff --git a/AsbCloudApp/Data/MeasureDto.cs b/AsbCloudApp/Data/MeasureDto.cs
index a8acb428..24418630 100644
--- a/AsbCloudApp/Data/MeasureDto.cs
+++ b/AsbCloudApp/Data/MeasureDto.cs
@@ -3,18 +3,35 @@ using System.Collections.Generic;
namespace AsbCloudApp.Data
{
- public class MeasureDto : IId
+ ///
+ /// инфо о результатах замера
+ ///
+ public class MeasureDto : IId, IWellRelated
{
+ ///
public int Id { get; set; }
+ ///
public int IdWell { get; set; }
+ ///
+ /// Id категории замера
+ ///
public int IdCategory { get; set; }
+ ///
+ /// название категории замера
+ ///
public string CategoryName { get; set; }
+ ///
+ /// отметка времени замера
+ ///
public DateTime Timestamp { get; set; }
+ ///
+ /// данные замера
+ ///
public Dictionary Data { get; set; }
}
}
diff --git a/AsbCloudApp/Data/MessageDto.cs b/AsbCloudApp/Data/MessageDto.cs
index 423f12cd..31c9a794 100644
--- a/AsbCloudApp/Data/MessageDto.cs
+++ b/AsbCloudApp/Data/MessageDto.cs
@@ -7,16 +7,32 @@ namespace AsbCloudApp.Data
///
public class MessageDto : IId
{
+ ///
public int Id { get; set; }
+ ///
+ /// дата появления события
+ ///
public DateTime Date { get; set; }
+ ///
+ /// категория события
+ ///
public int CategoryId { get; set; }
+ ///
+ /// глубина забоя, при котором событие возникло
+ ///
public double WellDepth { get; set; }
+ ///
+ /// пользователь панели оператора
+ ///
public string User { get; set; }
+ ///
+ /// текст сообщения
+ ///
public string Message { get; set; }
}
}
diff --git a/AsbCloudApp/Data/PaginationContainer.cs b/AsbCloudApp/Data/PaginationContainer.cs
index 49d49d6a..bdee31be 100644
--- a/AsbCloudApp/Data/PaginationContainer.cs
+++ b/AsbCloudApp/Data/PaginationContainer.cs
@@ -8,11 +8,18 @@ namespace AsbCloudApp.Data
///
public class PaginationContainer
{
+ ///
+ /// конструктор
+ ///
public PaginationContainer()
{
Items = new List(4);
}
+ ///
+ /// конструктор
+ ///
+ ///
public PaginationContainer(int capacity)
{
Items = new List(capacity);
diff --git a/AsbCloudApp/Data/PermissionDto.cs b/AsbCloudApp/Data/PermissionDto.cs
index 6c15e61f..ee4235ae 100644
--- a/AsbCloudApp/Data/PermissionDto.cs
+++ b/AsbCloudApp/Data/PermissionDto.cs
@@ -1,9 +1,22 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// Разрешение для группы пользователей сделать что-либо через web-api.
+ /// применяется как возможность доступа к Endpoint.
+ ///
public class PermissionDto : IId
{
+ ///
public int Id { get; set; }
+
+ ///
+ /// Название
+ ///
public string Name { get; set; }
+
+ ///
+ /// Описание
+ ///
public string Description { get; set; }
}
}
\ No newline at end of file
diff --git a/AsbCloudApp/Data/PlanFactBase.cs b/AsbCloudApp/Data/PlanFactBase.cs
index b4ba5ac0..fc3dcff4 100644
--- a/AsbCloudApp/Data/PlanFactBase.cs
+++ b/AsbCloudApp/Data/PlanFactBase.cs
@@ -1,8 +1,19 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO объединяющее плановые и фактические значения
+ ///
+ ///
public class PlanFactBase
{
+ ///
+ /// Плановое значение
+ ///
public T Plan { get; set; }
+
+ ///
+ /// Фактическое значение
+ ///
public T Fact { get; set; }
}
}
diff --git a/AsbCloudApp/Data/PlanFactPredictBase.cs b/AsbCloudApp/Data/PlanFactPredictBase.cs
index 22ad9f5a..2147aa7f 100644
--- a/AsbCloudApp/Data/PlanFactPredictBase.cs
+++ b/AsbCloudApp/Data/PlanFactPredictBase.cs
@@ -5,8 +5,19 @@
///
public class PlanFactPredictBase
{
+ ///
+ /// плановое значение
+ ///
public T Plan { get; set; }
+
+ ///
+ /// фактическое значение
+ ///
public T Fact { get; set; }
+
+ ///
+ /// предсказанное значение
+ ///
public T Predict { get; set; }
}
}
diff --git a/AsbCloudApp/Data/ReportProgressDto.cs b/AsbCloudApp/Data/ReportProgressDto.cs
index f3380d56..6a3caa51 100644
--- a/AsbCloudApp/Data/ReportProgressDto.cs
+++ b/AsbCloudApp/Data/ReportProgressDto.cs
@@ -1,10 +1,28 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO прогресса генерации рапорта-диаграммы
+ ///
public class ReportProgressDto
{
+ ///
+ /// прогресс 0 - 100%
+ ///
public float Progress { get; set; }
+
+ ///
+ /// название текущей операции генерации
+ ///
public string Operation { get; set; }
+
+ ///
+ /// номер текущей страницы
+ ///
public int CurrentPage { get; set; }
+
+ ///
+ /// предполагаемое суммарное количество страниц
+ ///
public int TotalPages { get; set; }
}
}
diff --git a/AsbCloudApp/Data/ReportPropertiesDto.cs b/AsbCloudApp/Data/ReportPropertiesDto.cs
index 8b889a2d..7ee7f099 100644
--- a/AsbCloudApp/Data/ReportPropertiesDto.cs
+++ b/AsbCloudApp/Data/ReportPropertiesDto.cs
@@ -2,16 +2,50 @@
namespace AsbCloudApp.Data
{
- public class ReportPropertiesDto : IId
+ ///
+ /// DTO формирования рапорта
+ ///
+ public class ReportPropertiesDto : IId, IWellRelated
{
+ ///
public int Id { get; set; }
- public string Name { get; set; }
- public FileInfoDto File { get; set; }
+
+ ///
public int IdWell { get; set; }
+
+ ///
+ /// название
+ ///
+ public string Name { get; set; }
+
+ ///
+ ///
+ ///
+ public FileInfoDto File { get; set; }
+
+ ///
+ /// Дата формирования
+ ///
public DateTime Date { get; set; }
+
+ ///
+ /// Дата начала рапорта
+ ///
public DateTime Begin { get; set; }
+
+ ///
+ /// Дата окончания рапорта
+ ///
public DateTime End { get; set; }
+
+ ///
+ /// шаг между точками диаграммы
+ ///
public int Step { get; set; }
+
+ ///
+ /// формат файла
+ ///
public string Format { get; set; }
}
}
diff --git a/AsbCloudApp/Data/RequestLogDto.cs b/AsbCloudApp/Data/RequestLogDto.cs
index 4b7d2380..28b3ff79 100644
--- a/AsbCloudApp/Data/RequestLogDto.cs
+++ b/AsbCloudApp/Data/RequestLogDto.cs
@@ -2,18 +2,64 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO журнала запросов
+ ///
public class RequestLogDto
{
+ ///
+ /// логин пользователя
+ ///
public string UserLogin { get; set; }
+
+ ///
+ /// Id пользователя
+ ///
public int UserId { get; set; }
+
+ ///
+ /// IP адрес пользователя
+ ///
public string UserIp { get; set; }
+
+ ///
+ /// метод запроса (GET, POST,..)
+ ///
public string RequestMethod { get; set; }
+
+ ///
+ /// url
+ ///
public string RequestPath { get; set; }
+
+ ///
+ /// Referer
+ ///
public string Referer { get; set; }
+
+ ///
+ /// продолжительность выполнения
+ ///
public long ElapsedMilliseconds { get; set; }
+
+ ///
+ /// http status [200 - Ok, ...]
+ ///
public int Status { get; set; }
+
+ ///
+ /// сообщение об ошибке, если она произошла
+ ///
public string ExceptionMessage { get; set; }
+
+ ///
+ /// метка времени запроса
+ ///
public DateTime Date { get; set; }
+
+ ///
+ /// стек вызовов
+ ///
public string ExceptionStack { get; set; }
}
}
\ No newline at end of file
diff --git a/AsbCloudApp/Data/RequestLogUserDto.cs b/AsbCloudApp/Data/RequestLogUserDto.cs
index 80e7a740..1aed73d0 100644
--- a/AsbCloudApp/Data/RequestLogUserDto.cs
+++ b/AsbCloudApp/Data/RequestLogUserDto.cs
@@ -2,15 +2,49 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO статистики запросов по пользователю
+ ///
public class RequestLogUserDto
{
+ ///
+ /// Id пользователя
+ ///
public int UserId { get; set; }
+
+ ///
+ /// логин
+ ///
public string Login { get; set; }
+
+ ///
+ /// IP адрес пользователя
+ ///
public string Ip { get; set; }
+
+ ///
+ /// время выполнения запроса
+ ///
public long ElapsedMs { get; set; }
+
+ ///
+ /// метка времени последнего запроса
+ ///
public DateTime LastDate { get; set; }
+
+ ///
+ /// кол-во запросов
+ ///
public long Requests { get; set; }
+
+ ///
+ /// кол-во ошибок
+ ///
public long Errors { get; set; }
+
+ ///
+ /// DTO пользователя
+ ///
public UserDto User { get; set; }
}
}
diff --git a/AsbCloudApp/Data/SAUB/EventDto.cs b/AsbCloudApp/Data/SAUB/EventDto.cs
index 9d81dc56..80d0071f 100644
--- a/AsbCloudApp/Data/SAUB/EventDto.cs
+++ b/AsbCloudApp/Data/SAUB/EventDto.cs
@@ -1,12 +1,38 @@
namespace AsbCloudApp.Data.SAUB
{
+ ///
+ /// Описание шаблона события панели оператора
+ ///
public class EventDto : IId
{
+ ///
+ /// id события
+ ///
public int Id { get; set; }
+
+ ///
+ /// шаблон текста сообщения
+ ///
public string Message { get; set; }
+
+ ///
+ /// id категории события
+ ///
public int IdCategory { get; set; }
+
+ ///
+ /// переменная сервера обмена информацией с полевым оборудованием
+ ///
public string Tag { get; set; }
+
+ ///
+ /// тип определения наступления события
+ ///
public int EventType { get; set; }
+
+ ///
+ /// флаг, следует ли воспроизводить звук при наступлении события
+ ///
public int IdSound { get; set; }
}
}
diff --git a/AsbCloudApp/Data/SAUB/SetpointInfoDto.cs b/AsbCloudApp/Data/SAUB/SetpointInfoDto.cs
index 131696c2..4d853c36 100644
--- a/AsbCloudApp/Data/SAUB/SetpointInfoDto.cs
+++ b/AsbCloudApp/Data/SAUB/SetpointInfoDto.cs
@@ -1,12 +1,38 @@
namespace AsbCloudApp.Data.SAUB
{
+ ///
+ /// DTO рекомендации уставок передаваемых на панель оператора
+ ///
public class SetpointInfoDto
{
+ ///
+ /// отображаемое название уставки
+ ///
public string DisplayName { get; set; }
+
+ ///
+ /// настоящее название уставки (имя переменной в панели оператора)
+ ///
public string Name { get; set; }
+
+ ///
+ /// единицы измерения
+ ///
public string Units { get; set; }
+
+ ///
+ /// комментарий
+ ///
public string Comment { get; set; }
+
+ ///
+ /// макс. значение
+ ///
public double Max { get; set; }
+
+ ///
+ /// мин значение
+ ///
public double Min { get; set; }
}
}
diff --git a/AsbCloudApp/Data/SAUB/SetpointsRequestDto.cs b/AsbCloudApp/Data/SAUB/SetpointsRequestDto.cs
index 84948f68..08850969 100644
--- a/AsbCloudApp/Data/SAUB/SetpointsRequestDto.cs
+++ b/AsbCloudApp/Data/SAUB/SetpointsRequestDto.cs
@@ -3,25 +3,55 @@ using System.Collections.Generic;
namespace AsbCloudApp.Data.SAUB
{
- public class SetpointsRequestDto : IId
+ ///
+ /// DTO запроса для предложения по изменению уставок на панели оператора
+ ///
+ public class SetpointsRequestDto : IId, IWellRelated
{
+ ///
public int Id { get; set; }
+ ///
public int IdWell { get; set; }
+ ///
+ /// Id автора запроса
+ ///
public int IdAuthor { get; set; }
+ ///
+ /// текущее состояние запроса 0: неизвестно, 1:ожидает отправки, 2: отправлено, 3: принято оператором, 4: отклонено оператором, 5: устарело
+ ///
public int IdState { get; set; }
+ ///
+ /// отметка времени создания запроса
+ ///
public DateTime UploadDate { get; set; }
+ ///
+ /// время в секундах актуальности этого запроса
+ ///
public int ObsolescenceSec { get; set; }
+ ///
+ /// набор уставок: {"название переменной панели"; "рекомендуемое значение"}
+ ///
public Dictionary Setpoints { get; set; }
+
+ ///
+ /// Комментарий для оператора панели
+ ///
public string Comment { get; set; }
+ ///
+ /// DTO скважины
+ ///
public WellDto Well { get; set; }
+ ///
+ /// DTO автора
+ ///
public UserDto Author { get; set; }
}
}
diff --git a/AsbCloudApp/Data/SAUB/TelemetryDataSaubDto.cs b/AsbCloudApp/Data/SAUB/TelemetryDataSaubDto.cs
index 3705f867..5b741abc 100644
--- a/AsbCloudApp/Data/SAUB/TelemetryDataSaubDto.cs
+++ b/AsbCloudApp/Data/SAUB/TelemetryDataSaubDto.cs
@@ -7,7 +7,14 @@ namespace AsbCloudApp.Data.SAUB
///
public class TelemetryDataSaubDto : ITelemetryData
{
+ ///
+ /// метка времени данных
+ ///
public DateTime DateTime { get; set; }
+
+ ///
+ /// метка времени данных (legacy)
+ ///
public DateTime Date // TODO: remove this legacy after all panels updated
{
get { return DateTime; }
@@ -97,44 +104,104 @@ namespace AsbCloudApp.Data.SAUB
///
public float? PressureIdle { get; set; }
+ ///
+ /// действующее задание давления
+ ///
public float? PressureSp { get; set; }
+ ///
+ /// задание давления для роторного режима
+ ///
public float? PressureSpRotor { get; set; }
+ ///
+ /// задание давления для режима слайда
+ ///
public float? PressureSpSlide { get; set; }
+ ///
+ /// задание давления для проработки
+ ///
public float? PressureSpDevelop { get; set; }
+ ///
+ /// ограничение макс перепада давления
+ ///
public float? PressureDeltaLimitMax { get; set; }
+ ///
+ /// осевая нагрузка
+ ///
public float? AxialLoad { get; set; }
+ ///
+ /// задание осевой нагрузки
+ ///
public float? AxialLoadSp { get; set; }
+ ///
+ /// ограничение макс. осевой нагрузки
+ ///
public float? AxialLoadLimitMax { get; set; }
+ ///
+ /// Вес на крюке
+ ///
public float? HookWeight { get; set; }
+ ///
+ /// Вес на крюке на х.х.
+ ///
public float? HookWeightIdle { get; set; }
+ ///
+ /// ограничение мин веса на крюке
+ ///
public float? HookWeightLimitMin { get; set; }
+ ///
+ /// ограничение макс веса на крюке
+ ///
public float? HookWeightLimitMax { get; set; }
+ ///
+ /// момент ротора
+ ///
public float? RotorTorque { get; set; }
+ ///
+ /// момент ротора на х.х.
+ ///
public float? RotorTorqueIdle { get; set; }
+ ///
+ /// задание момента ротора
+ ///
public float? RotorTorqueSp { get; set; }
+ ///
+ /// ограничение момента ротора
+ ///
public float? RotorTorqueLimitMax { get; set; }
+ ///
+ /// скорость ротора
+ ///
public float? RotorSpeed { get; set; }
+ ///
+ /// расход
+ ///
public float? Flow { get; set; }
+ ///
+ /// расход на х.х.
+ ///
public float? FlowIdle { get; set; }
+ ///
+ /// ограничение макс расхода
+ ///
public float? FlowDeltaLimitMax { get; set; }
///
@@ -147,6 +214,9 @@ namespace AsbCloudApp.Data.SAUB
///
public short? MseState { get; set; }
+ ///
+ /// MSE
+ ///
public float? Mse { get; set; }
}
}
\ No newline at end of file
diff --git a/AsbCloudApp/Data/SAUB/TelemetryDataSpinDto.cs b/AsbCloudApp/Data/SAUB/TelemetryDataSpinDto.cs
index 122ee2ee..1011f214 100644
--- a/AsbCloudApp/Data/SAUB/TelemetryDataSpinDto.cs
+++ b/AsbCloudApp/Data/SAUB/TelemetryDataSpinDto.cs
@@ -2,8 +2,10 @@
namespace AsbCloudApp.Data.SAUB
{
+#pragma warning disable CS1591 // Отсутствует комментарий XML для открытого видимого типа или члена
public class TelemetryDataSpinDto : ITelemetryData
{
+ ///
public int IdTelemetry { get; set; }
public DateTime DateTime { get; set; }
public DateTime Date // TODO: remove this legacy after all panels updated
@@ -75,4 +77,5 @@ namespace AsbCloudApp.Data.SAUB
public short? State { get; set; }
public float? BreakAngleLeft { get; set; }
}
+#pragma warning restore CS1591 // Отсутствует комментарий XML для открытого видимого типа или члена
}
diff --git a/AsbCloudApp/Data/SAUB/TelemetryInfoDto.cs b/AsbCloudApp/Data/SAUB/TelemetryInfoDto.cs
index 7b9f16cf..62bebfec 100644
--- a/AsbCloudApp/Data/SAUB/TelemetryInfoDto.cs
+++ b/AsbCloudApp/Data/SAUB/TelemetryInfoDto.cs
@@ -2,18 +2,64 @@
namespace AsbCloudApp.Data.SAUB
{
+ ///
+ /// общая информация о панели оператора
+ ///
public class TelemetryInfoDto
{
+ ///
+ /// дата начала бурения (заполнения данных на панели)
+ ///
public DateTime DrillingStartDate { get; set; }
+
+ ///
+ /// идентификатор временной зоны
+ ///
public string TimeZoneId { get; set; }
+
+ ///
+ /// смещение в часах относительно UTC
+ ///
public double TimeZoneOffsetTotalHours { get; set; }
+
+ ///
+ /// название скважины
+ ///
public string Well { get; set; }
+
+ ///
+ /// название куста
+ ///
public string Cluster { get; set; }
+
+ ///
+ /// название заказчика
+ ///
public string Customer { get; set; }
+
+ ///
+ /// название месторождения
+ ///
public string Deposit { get; set; }
+
+ ///
+ /// версия ПО панели оператора
+ ///
public string HmiVersion { get; set; }
+
+ ///
+ /// версия ПО ПЛК САУБ
+ ///
public string SaubPlcVersion { get; set; }
+
+ ///
+ /// версия ПО ПЛК Спин мастер
+ ///
public string SpinPlcVersion { get; set; }
+
+ ///
+ /// комментарий
+ ///
public string Comment { get; set; }
}
}
diff --git a/AsbCloudApp/Data/SAUB/TelemetryMessageDto.cs b/AsbCloudApp/Data/SAUB/TelemetryMessageDto.cs
index 02d9d728..38188ed0 100644
--- a/AsbCloudApp/Data/SAUB/TelemetryMessageDto.cs
+++ b/AsbCloudApp/Data/SAUB/TelemetryMessageDto.cs
@@ -7,14 +7,49 @@ namespace AsbCloudApp.Data.SAUB
///
public class TelemetryMessageDto : IId
{
+ ///
+ /// Id сообщения в базе панели оператора
+ ///
public int Id { get; set; }
+
+ ///
+ /// отметка времени
+ ///
public DateTime Date { get; set; }
+
+ ///
+ /// глубина забоя
+ ///
public double WellDepth { get; set; }
+
+ ///
+ /// Id события которое генерировало это сообщение
+ ///
public int IdEvent { get; set; }
+
+ ///
+ /// идентификатор пользователя телеметрии
+ ///
public int? IdTelemetryUser { get; set; }
+
+ ///
+ /// аргумент №0 для подстановки в шаблон сообщения
+ ///
public string Arg0 { get; set; }
+
+ ///
+ /// аргумент №1 для подстановки в шаблон сообщения
+ ///
public string Arg1 { get; set; }
+
+ ///
+ /// аргумент №2 для подстановки в шаблон сообщения
+ ///
public string Arg2 { get; set; }
+
+ ///
+ /// аргумент №3 для подстановки в шаблон сообщения
+ ///
public string Arg3 { get; set; }
}
}
diff --git a/AsbCloudApp/Data/SAUB/TelemetryUserDto.cs b/AsbCloudApp/Data/SAUB/TelemetryUserDto.cs
index 83b8ba26..5fb67dc0 100644
--- a/AsbCloudApp/Data/SAUB/TelemetryUserDto.cs
+++ b/AsbCloudApp/Data/SAUB/TelemetryUserDto.cs
@@ -1,15 +1,31 @@
namespace AsbCloudApp.Data.SAUB
{
+ ///
+ /// Пользователь панели оператора
+ ///
public class TelemetryUserDto : IId
{
+ ///
public int Id { get; set; }
+ ///
+ /// Имя
+ ///
public string Name { get; set; }
+ ///
+ /// Фамилия
+ ///
public string Surname { get; set; }
+ ///
+ /// Отчество
+ ///
public string Patronymic { get; set; }
+ ///
+ /// Уровень доступа
+ ///
public int Level { get; set; }
}
}
diff --git a/AsbCloudApp/Data/SAUB/TelemetryWirelineRunOutDto.cs b/AsbCloudApp/Data/SAUB/TelemetryWirelineRunOutDto.cs
index b4276962..45c9f472 100644
--- a/AsbCloudApp/Data/SAUB/TelemetryWirelineRunOutDto.cs
+++ b/AsbCloudApp/Data/SAUB/TelemetryWirelineRunOutDto.cs
@@ -2,8 +2,14 @@
namespace AsbCloudApp.Data.SAUB
{
+ ///
+ /// DTO телеметрии наработки талевого каната
+ ///
public class TelemetryWirelineRunOutDto
{
+ ///
+ /// отметка времени
+ ///
public DateTime DateTime { get; set; }
///
diff --git a/AsbCloudApp/Data/ScheduleDto.cs b/AsbCloudApp/Data/ScheduleDto.cs
index 610cdab7..ade938f4 100644
--- a/AsbCloudApp/Data/ScheduleDto.cs
+++ b/AsbCloudApp/Data/ScheduleDto.cs
@@ -5,23 +5,19 @@ namespace AsbCloudApp.Data
///
/// Описание данных графика работ
///
- public class ScheduleDto : IId
+ public class ScheduleDto : IId, IWellRelated
{
- ///
- /// Идентификатор в БД
- ///
+ ///
public int Id { get; set; }
+ ///
+ public int IdWell { get; set; }
+
///
/// Идентификатор бурильщика
///
public int IdDriller { get; set; }
- ///
- /// Идентификатор скважины
- ///
- public int IdWell { get; set; }
-
///
/// Начало смены
///
diff --git a/AsbCloudApp/Data/SimpleTimezoneDto.cs b/AsbCloudApp/Data/SimpleTimezoneDto.cs
index 2ccdacbd..3d9dcc55 100644
--- a/AsbCloudApp/Data/SimpleTimezoneDto.cs
+++ b/AsbCloudApp/Data/SimpleTimezoneDto.cs
@@ -1,11 +1,26 @@
namespace AsbCloudApp.Data
{
+ ///
+ ///
+ ///
public class SimpleTimezoneDto
{
+ ///
+ /// UTC
+ ///
public double Hours { get; set; }
+
+ ///
+ ///
+ ///
public string TimezoneId { get; set; }
+
+ ///
+ ///
+ ///
public bool IsOverride { get; set; }
+ ///
public override bool Equals(object obj)
{
if (obj is SimpleTimezoneDto tTimeZone
@@ -16,6 +31,7 @@ namespace AsbCloudApp.Data
return false;
}
+ ///
public override int GetHashCode()
=> Hours.GetHashCode()
| TimezoneId.GetHashCode()
diff --git a/AsbCloudApp/Data/StatClusterDto.cs b/AsbCloudApp/Data/StatClusterDto.cs
index 26daee7c..0bcbfe65 100644
--- a/AsbCloudApp/Data/StatClusterDto.cs
+++ b/AsbCloudApp/Data/StatClusterDto.cs
@@ -2,10 +2,22 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO статистики скважин куста
+ ///
public class StatClusterDto : IId
{
+ ///
public int Id { get; set; }
+
+ ///
+ /// название куста
+ ///
public string Caption { get; set; }
+
+ ///
+ /// список статистик скважин куста
+ ///
public IEnumerable StatsWells { get; set; }
}
}
diff --git a/AsbCloudApp/Data/StatOperationsDto.cs b/AsbCloudApp/Data/StatOperationsDto.cs
index 90f221ac..e488e37c 100644
--- a/AsbCloudApp/Data/StatOperationsDto.cs
+++ b/AsbCloudApp/Data/StatOperationsDto.cs
@@ -2,6 +2,9 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO статистики операций
+ ///
public class StatOperationsDto
{
///
diff --git a/AsbCloudApp/Data/StatSectionDto.cs b/AsbCloudApp/Data/StatSectionDto.cs
index b3563645..f0da2188 100644
--- a/AsbCloudApp/Data/StatSectionDto.cs
+++ b/AsbCloudApp/Data/StatSectionDto.cs
@@ -1,8 +1,16 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// План-факт статистики по операциям за секцию скважины
+ ///
public class StatSectionDto : PlanFactBase, IId
{
+ ///
public int Id { get; set; }
+
+ ///
+ /// название секции
+ ///
public string Caption { get; set; }
}
}
diff --git a/AsbCloudApp/Data/StatWellDto.cs b/AsbCloudApp/Data/StatWellDto.cs
index 81d20ff3..08581313 100644
--- a/AsbCloudApp/Data/StatWellDto.cs
+++ b/AsbCloudApp/Data/StatWellDto.cs
@@ -3,16 +3,52 @@ using System.Collections.Generic;
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO статистики по операциям за скважину
+ ///
public class StatWellDto : IId
{
+ ///
public int Id { get; set; }
+
+ ///
+ /// название
+ ///
public string Caption { get; set; }
+
+ ///
+ /// тип скважины
+ ///
public string WellType { get; set; }
+
+ ///
+ /// ИД состояния скважины
+ ///
public int IdState { get; set; }
+
+ ///
+ /// текст состояния скважины
+ ///
public string State { get; set; }
+
+ ///
+ /// дата прихода последней телеметрии
+ ///
public DateTime LastTelemetryDate { get; set; }
+
+ ///
+ /// Статистика по секциям
+ ///
public IEnumerable Sections { get; set; }
+
+ ///
+ /// статистика за всю скважину
+ ///
public PlanFactBase Total { get; set; }
+
+ ///
+ /// компании участвующие в строительстве скважины
+ ///
public IEnumerable Companies { get; set; }
}
}
diff --git a/AsbCloudApp/Data/UserDto.cs b/AsbCloudApp/Data/UserDto.cs
index e546d922..15cc5408 100644
--- a/AsbCloudApp/Data/UserDto.cs
+++ b/AsbCloudApp/Data/UserDto.cs
@@ -1,17 +1,62 @@
namespace AsbCloudApp.Data
{
+ ///
+ /// DTO пользователя платформы
+ ///
public class UserDto : IId
{
+ ///
public int Id { get; set; }
+
+ ///
+ /// логин
+ ///
public string Login { get; set; }
+
+
+ ///
+ /// Имя
+ ///
public string Name { get; set; }
+
+ ///
+ /// Фамилия
+ ///
public string Surname { get; set; }
+
+ ///
+ /// Отчество
+ ///
public string Patronymic { get; set; }
+
+ ///
+ /// Email
+ ///
public string Email { get; set; }
+
+ ///
+ /// Phone
+ ///
public string Phone { get; set; }
+
+ ///
+ /// Должность
+ ///
public string Position { get; set; }
+
+ ///
+ /// Id компании
+ ///
public int? IdCompany { get; set; }
+
+ ///
+ /// Id состояния пользователя
+ ///
public short? IdState { get; set; }
+
+ ///
+ /// DTO компании
+ ///
public CompanyDto Company { get; set; }
}
}
diff --git a/AsbCloudApp/Data/UserExtendedDto.cs b/AsbCloudApp/Data/UserExtendedDto.cs
index c484c30b..5a8adea5 100644
--- a/AsbCloudApp/Data/UserExtendedDto.cs
+++ b/AsbCloudApp/Data/UserExtendedDto.cs
@@ -2,8 +2,12 @@
namespace AsbCloudApp.Data
{
+ ///
public class UserExtendedDto : UserDto
{
+ ///
+ /// Роли пользователя
+ ///
public IEnumerable RoleNames { get; set; }
}
}
diff --git a/AsbCloudApp/Data/UserRegistrationDto.cs b/AsbCloudApp/Data/UserRegistrationDto.cs
index 6d8d53e2..a1d9033f 100644
--- a/AsbCloudApp/Data/UserRegistrationDto.cs
+++ b/AsbCloudApp/Data/UserRegistrationDto.cs
@@ -1,7 +1,11 @@
namespace AsbCloudApp.Data
{
+ ///
public class UserRegistrationDto : UserDto
{
+ ///
+ /// пароль, используется только при регистрации.
+ ///
public string Password { get; set; }
}
}
diff --git a/AsbCloudApp/Data/UserRoleDto.cs b/AsbCloudApp/Data/UserRoleDto.cs
index 94268a16..aa525c91 100644
--- a/AsbCloudApp/Data/UserRoleDto.cs
+++ b/AsbCloudApp/Data/UserRoleDto.cs
@@ -3,14 +3,37 @@ using System.Text.Json.Serialization;
namespace AsbCloudApp.Data
{
+ ///
+ /// Роль пользователя платформы
+ ///
public class UserRoleDto : IId
{
+ ///
public int Id { get; set; }
+
+ ///
+ /// название
+ ///
public string Caption { get; set; }
+
+ ///
+ /// id типа роли
+ ///
public int IdType { get; set; }
+
+ ///
+ /// список разрешений
+ ///
public IEnumerable Permissions { get; set; }
+
+ ///
+ /// Включенные роли
+ ///
public virtual ICollection Roles { get; set; }
+ ///
+ /// Пользователи в роли
+ ///
[JsonIgnore]
public virtual ICollection Users { get; set; }
diff --git a/AsbCloudApp/Data/UserTokenDto.cs b/AsbCloudApp/Data/UserTokenDto.cs
index 24defd9a..a561a77a 100644
--- a/AsbCloudApp/Data/UserTokenDto.cs
+++ b/AsbCloudApp/Data/UserTokenDto.cs
@@ -2,9 +2,17 @@
namespace AsbCloudApp.Data
{
+ ///
public class UserTokenDto : UserExtendedDto
{
+ ///
+ /// все разрешения пользователя
+ ///
public IEnumerable Permissions { get; set; }
+
+ ///
+ /// bearer token (для работы с web-api)
+ ///
public string Token { get; set; }
}
}
diff --git a/AsbCloudApp/Data/WITS/RecordBaseDto.cs b/AsbCloudApp/Data/WITS/RecordBaseDto.cs
index 78777041..e5daede1 100644
--- a/AsbCloudApp/Data/WITS/RecordBaseDto.cs
+++ b/AsbCloudApp/Data/WITS/RecordBaseDto.cs
@@ -5,14 +5,20 @@ namespace AsbCloudApp.Data.WITS
///
/// This is base class for all WITS-0 records
///
- public abstract class RecordBaseDto : ITelemetryData
+ public abstract class RecordBaseDto : IId, ITelemetryData
{
+ ///
public int Id { get; set; }
+ ///
public int IdTelemetry { get; set; }
+ ///
public DateTime DateTime { get; set; }
+ ///
+ ///
+ ///
public int TimeStamp { get; set; }
///
diff --git a/AsbCloudApp/Data/WellCompositeDto.cs b/AsbCloudApp/Data/WellCompositeDto.cs
index 678fe989..4f5966b2 100644
--- a/AsbCloudApp/Data/WellCompositeDto.cs
+++ b/AsbCloudApp/Data/WellCompositeDto.cs
@@ -1,11 +1,21 @@
namespace AsbCloudApp.Data
{
- public class WellCompositeDto
+ ///
+ /// DTO элемент композитной скважины
+ ///
+ public class WellCompositeDto : IWellRelated
{
+ ///
public int IdWell { get; set; }
+ ///
+ /// id скважины входящей в композитную для этой
+ ///
public int IdWellSrc { get; set; }
+ ///
+ /// id секции скважины входящей в композитную для этой
+ ///
public int IdWellSectionType { get; set; }
}
}
diff --git a/AsbCloudApp/Data/WellOperationCategoryDto.cs b/AsbCloudApp/Data/WellOperationCategoryDto.cs
index 04a8fcd0..84a54934 100644
--- a/AsbCloudApp/Data/WellOperationCategoryDto.cs
+++ b/AsbCloudApp/Data/WellOperationCategoryDto.cs
@@ -1,11 +1,21 @@
namespace AsbCloudApp.Data
{
- public class WellOperationCategoryDto
+ ///
+ /// DTO категория операции
+ ///
+ public class WellOperationCategoryDto: IId
{
+ ///
public int Id { get; set; }
+ ///
+ /// название
+ ///
public string Name { get; set; }
+ ///
+ /// код операции
+ ///
public int Code { get; set; }
}
}
diff --git a/AsbCloudApp/Data/WellOperationDto.cs b/AsbCloudApp/Data/WellOperationDto.cs
index a140288b..4c451d26 100644
--- a/AsbCloudApp/Data/WellOperationDto.cs
+++ b/AsbCloudApp/Data/WellOperationDto.cs
@@ -2,20 +2,40 @@
namespace AsbCloudApp.Data
{
- public class WellOperationDto : IId
+ ///
+ /// Операции на скважине (заведенные пользователем)
+ ///
+ public class WellOperationDto : IId, IWellRelated
{
+ ///
public int Id { get; set; }
+ ///
public int IdWell { get; set; }
+ ///
+ /// id секции скважины
+ ///
public int IdWellSectionType { get; set; }
+ ///
+ /// название секции скважины
+ ///
public string WellSectionTypeName { get; set; }
+ ///
+ /// id категории операции
+ ///
public int IdCategory { get; set; }
+ ///
+ /// название категории операции
+ ///
public string CategoryName { get; set; }
+ ///
+ /// дополнительная информация по операции
+ ///
public string CategoryInfo { get; set; }
///
diff --git a/AsbCloudApp/Exceptions/ArgumentInvalidException.cs b/AsbCloudApp/Exceptions/ArgumentInvalidException.cs
index 75b31566..2e70b871 100644
--- a/AsbCloudApp/Exceptions/ArgumentInvalidException.cs
+++ b/AsbCloudApp/Exceptions/ArgumentInvalidException.cs
@@ -7,22 +7,40 @@ namespace AsbCloudApp.Exceptions
///
public class ArgumentInvalidException : Exception
{
+ ///
+ /// название аргумента
+ ///
public string ParamName { get; }
+ ///
+ /// конструктор
+ ///
+ ///
+ ///
public ArgumentInvalidException(string message, string paramName = default)
: base(message)
{
ParamName = paramName;
}
+ ///
+ /// преобразование в объект валидации
+ ///
+ ///
public object ToValaidationErrorObject()
=> MakeValidationError(ParamName, Message);
+ ///
+ /// фабрика объекта валидации
+ ///
+ ///
+ ///
+ ///
public static object MakeValidationError(string paramName, params string[] errors)
=> new
{
name = paramName,
- errors = errors,
+ errors,
};
}
}
diff --git a/AsbCloudApp/Services/IDrillParamsService.cs b/AsbCloudApp/Services/IDrillParamsService.cs
index 69a091d1..e95e74b8 100644
--- a/AsbCloudApp/Services/IDrillParamsService.cs
+++ b/AsbCloudApp/Services/IDrillParamsService.cs
@@ -5,25 +5,78 @@ using System.Threading.Tasks;
namespace AsbCloudApp.Services
{
+ ///
+ /// The параметры бурения service.
+ ///
public interface IDrillParamsService : ICrudService
{
+ ///
+ /// default параметры бурения
+ ///
+ /// The id well.
+ /// The start depth.
+ /// The end depth.
+ /// The token.
+ /// A Task.
Task GetDefaultDrillParamsAsync(int idWell, double startDepth,
double endDepth, CancellationToken token = default);
+ ///
+ /// Все за скважину
+ ///
+ /// The id well.
+ /// The token.
+ /// A Task.
Task> GetAllAsync(int idWell,
CancellationToken token = default);
+ ///
+ /// Все скважину по композитной скважине
+ ///
+ /// The id well.
+ /// The token.
+ /// A Task.
Task> GetCompositeAllAsync(int idWell,
CancellationToken token = default);
+ ///
+ /// Добавить
+ ///
+ /// The id well.
+ /// The dto.
+ /// The token.
+ /// A Task.
Task InsertAsync(int idWell, DrillParamsDto dto,
CancellationToken token = default);
+ ///
+ /// Добавить несколько
+ ///
+ /// The id well.
+ /// The dtos.
+ /// The token.
+ /// A Task.
Task InsertRangeAsync(int idWell, IEnumerable dtos,
CancellationToken token = default);
+ ///
+ /// Редактировать
+ ///
+ /// The id well.
+ /// The dto id.
+ /// The dto.
+ /// The token.
+ /// A Task.
Task UpdateAsync(int idWell, int dtoId, DrillParamsDto dto,
CancellationToken token = default);
+
+ ///
+ /// Удалить старые и сохранить новые
+ ///
+ /// The id well.
+ /// The dtos.
+ /// The token.
+ /// A Task.
Task SaveAsync(int idWell, IEnumerable dtos, CancellationToken token = default);
}
}
diff --git a/AsbCloudApp/Services/ITelemetryService.cs b/AsbCloudApp/Services/ITelemetryService.cs
index 144ae3ca..b177f383 100644
--- a/AsbCloudApp/Services/ITelemetryService.cs
+++ b/AsbCloudApp/Services/ITelemetryService.cs
@@ -26,6 +26,7 @@ namespace AsbCloudApp.Services
///
/// старая (исходная)
/// новая
+ ///
///
Task MergeAsync(int from, int to, CancellationToken token);
void SaveRequestDate(string uid, DateTimeOffset remoteDate);
diff --git a/AsbCloudApp/Services/IWitsRepository.cs b/AsbCloudApp/Services/IWitsRepository.cs
index dfda1320..17ae9d69 100644
--- a/AsbCloudApp/Services/IWitsRepository.cs
+++ b/AsbCloudApp/Services/IWitsRepository.cs
@@ -6,12 +6,45 @@ using System.Threading.Tasks;
namespace AsbCloudApp.Services
{
+ ///
+ /// The wits record repository.
+ ///
public interface IWitsRecordRepository
where TDto : ITelemetryData
{
+ ///
+ /// Добавить новые данные
+ ///
+ /// The id telemetry.
+ /// The dtos.
+ /// The token.
+ /// A Task.
Task SaveDataAsync(int idTelemetry, IEnumerable dtos, CancellationToken token);
+
+ ///
+ /// Получить данные по телеметрии за период
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
Task> GetAsync(int idTelemetry, DateTime begin, DateTime end, CancellationToken token);
+
+ ///
+ /// получить массив из одной записи самой поздней по дате
+ ///
+ /// The id telemetry.
+ /// The token.
+ /// A Task.
Task> GetLastAsync(int idTelemetry, CancellationToken token);
+
+ ///
+ /// получить статистику по всему архиву: дата самой ранней записи, самой поздней и общее количество
+ ///
+ /// The id telemetry.
+ /// The token.
+ /// A Task.
Task<(DateTime begin, DateTime end, int count)?> GetStatAsync(int idTelemetry, CancellationToken token);
}
}
\ No newline at end of file
diff --git a/ConsoleApp1/ConsoleApp1.csproj b/ConsoleApp1/ConsoleApp1.csproj
index e0d86f92..173388d2 100644
--- a/ConsoleApp1/ConsoleApp1.csproj
+++ b/ConsoleApp1/ConsoleApp1.csproj
@@ -32,4 +32,9 @@
+
+
+
+
+
diff --git a/ConsoleApp1/Properties/launchSettings.json b/ConsoleApp1/Properties/launchSettings.json
deleted file mode 100644
index 33504c94..00000000
--- a/ConsoleApp1/Properties/launchSettings.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "profiles": {
- "WSL": {
- "commandName": "WSL2",
- "distributionName": ""
- }
- }
-}
\ No newline at end of file