diff --git a/AsbCloudApp/Requests/DataSaubStatRequest.cs b/AsbCloudApp/Requests/DataSaubStatRequest.cs
index b4400f3e..a9bcbf7d 100644
--- a/AsbCloudApp/Requests/DataSaubStatRequest.cs
+++ b/AsbCloudApp/Requests/DataSaubStatRequest.cs
@@ -9,23 +9,23 @@ namespace AsbCloudApp.Requests
{
///
/// Изменение уставки факт перепада давления от первого значения в начале интервала
- /// Не менее 5 атм и не более 15(50) атм;
+ /// Не менее 5 атм и не более 50 атм;
///
- [Range(5, 15, ErrorMessage = "Изменение уставки факт перепада давления не может быть меньше 5 и больше 15 атм")]
+ [Range(5, 50, ErrorMessage = "Изменение уставки факт перепада давления не может быть меньше 5 и больше 50 атм")]
public double DeltaPressure { get; set; } = 5d;
///
/// Изменение уставки факт осевой нагрузки от первого значения в начале интервала
- /// Не менее 1 т и не более 5(20) т;
+ /// Не менее 1 т и не более 20 т;
///
- [Range(1, 5, ErrorMessage = "Изменение уставки факт осевой нагрузки не может быть меньше 1 и больше 5 т")]
+ [Range(1, 20, ErrorMessage = "Изменение уставки факт осевой нагрузки не может быть меньше 1 и больше 20 т")]
public double DeltaAxialLoad { get; set; } = 1d;
///
/// Изменение уставки момента от первого значения в начале интервала
- /// Не менее 5 кН*м и не более 10(20) кН*м.
+ /// Не менее 5 кН*м и не более 20 кН*м.
///
- [Range(5, 10, ErrorMessage = "Изменение уставки момента не может быть меньше 5 и больше 10 кН*м")]
+ [Range(5, 20, ErrorMessage = "Изменение уставки момента не может быть меньше 5 и больше 20 кН*м")]
public double DeltaRotorTorque { get; set; } = 5d;
///
diff --git a/AsbCloudInfrastructure/Services/DetectOperations/DetectedOperationService.cs b/AsbCloudInfrastructure/Services/DetectOperations/DetectedOperationService.cs
index 36809ec3..53db6c4c 100644
--- a/AsbCloudInfrastructure/Services/DetectOperations/DetectedOperationService.cs
+++ b/AsbCloudInfrastructure/Services/DetectOperations/DetectedOperationService.cs
@@ -11,7 +11,6 @@ using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using AsbCloudInfrastructure.Services.DetectOperations.Detectors;
-using AsbCloudInfrastructure.Services.SAUB;
namespace AsbCloudInfrastructure.Services.DetectOperations;
@@ -20,6 +19,7 @@ public class DetectedOperationService : IDetectedOperationService
private readonly IDetectedOperationRepository operationRepository;
private readonly IWellOperationCategoryRepository wellOperationCategoryRepository;
private readonly IWellService wellService;
+ private readonly ITelemetryService telemetryService;
private readonly IRepositoryWellRelated operationValueRepository;
private readonly IScheduleRepository scheduleRepository;
private readonly ITelemetryDataSaubService telemetryDataSaubService;
@@ -34,6 +34,7 @@ public class DetectedOperationService : IDetectedOperationService
IDetectedOperationRepository operationRepository,
IWellOperationCategoryRepository wellOperationCategoryRepository,
IWellService wellService,
+ ITelemetryService telemetryService,
IRepositoryWellRelated operationValueRepository,
IScheduleRepository scheduleRepository,
ITelemetryDataSaubService telemetryDataSaubService)
@@ -41,6 +42,7 @@ public class DetectedOperationService : IDetectedOperationService
this.operationRepository = operationRepository;
this.wellOperationCategoryRepository = wellOperationCategoryRepository;
this.wellService = wellService;
+ this.telemetryService = telemetryService;
this.operationValueRepository = operationValueRepository;
this.scheduleRepository = scheduleRepository;
this.telemetryDataSaubService = telemetryDataSaubService;
@@ -143,6 +145,7 @@ public class DetectedOperationService : IDetectedOperationService
const int minOperationLength = 5;
const int maxDetectorsInterpolationFrameLength = 30;
const int gap = maxDetectorsInterpolationFrameLength + minOperationLength;
+ var timezone = telemetryService.GetTimezone(idTelemetry);
while (true)
{
@@ -153,13 +156,12 @@ public class DetectedOperationService : IDetectedOperationService
Order = 0
};
- var detectableTelemetries = (await telemetryDataSaubService.GetByTelemetryAsync(idTelemetry, request, token))
+ var dtos = await telemetryDataSaubService.GetByTelemetryAsync(idTelemetry, request, token);
+ var detectableTelemetries = dtos
.Where(t => t.BlockPosition >= 0)
- .Select(t => t as TelemetryNewDataSaubDto)
- .Where (t => t is not null)
.Select(t => new DetectableTelemetry
{
- DateTime = t.DateTime,
+ DateTime = new DateTimeOffset(t.DateTime, timezone.Offset),
IdUser = t.IdUser,
Mode = t.Mode,
WellDepth = t.WellDepth,
diff --git a/AsbCloudInfrastructure/Services/SAUB/TelemetryDataSaubService.cs b/AsbCloudInfrastructure/Services/SAUB/TelemetryDataSaubService.cs
index e6fb372b..9bca69bd 100644
--- a/AsbCloudInfrastructure/Services/SAUB/TelemetryDataSaubService.cs
+++ b/AsbCloudInfrastructure/Services/SAUB/TelemetryDataSaubService.cs
@@ -129,10 +129,10 @@ public class TelemetryDataSaubService : TelemetryDataBaseService();
+ var dto = src.Adapt();
var telemetryUser = telemetryUserService.GetOrDefault(src.IdTelemetry, src.IdUser ?? int.MinValue);
dto.User = telemetryUser?.MakeDisplayName();
- dto.DateTime = src.DateTime.ToOffset(TimeSpan.FromHours(timezoneOffset)); // src.DateTime.ToRemoteDateTime(timezoneOffset);
+ dto.DateTime = src.DateTime.ToRemoteDateTime(timezoneOffset);
dto.BitDepth = src.BitDepth <= src.WellDepth
? src.BitDepth
: src.WellDepth;