diff --git a/AsbCloudApp/Requests/ReportParametersRequest.cs b/AsbCloudApp/Requests/ReportParametersRequest.cs
index 57b83e4d..74bc358a 100644
--- a/AsbCloudApp/Requests/ReportParametersRequest.cs
+++ b/AsbCloudApp/Requests/ReportParametersRequest.cs
@@ -24,12 +24,12 @@ public class ReportParametersRequest: IValidatableObject
///
/// Дата начала интервала
///
- public DateTime Begin { get; set; } = default;
+ public DateTimeOffset Begin { get; set; } = default;
///
/// Дата окончания интервала
///
- public DateTime End { get; set; } = default;
+ public DateTimeOffset End { get; set; } = default;
///
public IEnumerable Validate(ValidationContext validationContext)
@@ -37,7 +37,7 @@ public class ReportParametersRequest: IValidatableObject
if (End < Begin)
yield return new("End mast be less then begin");
- if (Begin < new DateTime(2000, 1, 1))
+ if (Begin < new DateTimeOffset(2000, 1, 1, 0, 0, 0, TimeSpan.Zero))
yield return new("Begin mast be > 2000-1-1");
}
}
\ No newline at end of file
diff --git a/AsbCloudApp/Services/IReportService.cs b/AsbCloudApp/Services/IReportService.cs
index 5f992a20..4b259240 100644
--- a/AsbCloudApp/Services/IReportService.cs
+++ b/AsbCloudApp/Services/IReportService.cs
@@ -46,7 +46,7 @@ namespace AsbCloudApp.Services
///
///
///
- int GetReportPagesCount(int idWell, DateTime begin, DateTime end,
+ int GetReportPagesCount(int idWell, DateTimeOffset begin, DateTimeOffset end,
int stepSeconds, int format);
///
diff --git a/AsbCloudInfrastructure/Services/ReportService.cs b/AsbCloudInfrastructure/Services/ReportService.cs
index e1c75d62..04d7c63b 100644
--- a/AsbCloudInfrastructure/Services/ReportService.cs
+++ b/AsbCloudInfrastructure/Services/ReportService.cs
@@ -64,11 +64,11 @@ public class ReportService : IReportService
return work.Id;
}
- public int GetReportPagesCount(int idWell, DateTime begin, DateTime end, int stepSeconds, int format)
+ public int GetReportPagesCount(int idWell, DateTimeOffset begin, DateTimeOffset end, int stepSeconds, int format)
{
var timezoneOffset = wellService.GetTimezone(idWell).Hours;
- var beginRemote = begin.ToTimeZoneOffsetHours(timezoneOffset);
- var endRemote = end.ToTimeZoneOffsetHours(timezoneOffset);
+ var beginRemote = begin.DateTime.ToTimeZoneOffsetHours(timezoneOffset);
+ var endRemote = end.DateTime.ToTimeZoneOffsetHours(timezoneOffset);
var generator = GetReportGenerator(idWell, beginRemote, endRemote, stepSeconds, format, db);
var pagesCount = generator.GetPagesCount();
@@ -127,10 +127,10 @@ public class ReportService : IReportService
CancellationToken token)
{
var timezoneOffset = wellService.GetTimezone(idWell).Hours;
- var beginRemote = request.Begin.ToTimeZoneOffsetHours(timezoneOffset);
- var endRemote = request.End.ToTimeZoneOffsetHours(timezoneOffset);
- var beginUtc = request.Begin.ToUtcDateTimeOffset(timezoneOffset);
- var endUtc = request.End.ToUtcDateTimeOffset(timezoneOffset);
+ var beginRemote = request.Begin.DateTime;
+ var endRemote = request.End.DateTime;
+ var beginUtc = request.Begin.ToUniversalTime();
+ var endUtc = request.End.ToUniversalTime();
var tempDir = Path.Combine(Path.GetTempPath(), "report");