forked from ddrilling/AsbCloudServer
Исправлено получение диапазона дат для Репортов
This commit is contained in:
parent
b0155a19c0
commit
528e649813
@ -85,20 +85,29 @@ namespace AsbCloudInfrastructure.Services
|
|||||||
public DatesRangeDto GetReportsDatesRange(int wellId)
|
public DatesRangeDto GetReportsDatesRange(int wellId)
|
||||||
{
|
{
|
||||||
var telemetry = telemetryService.GetTelemetryByWellId(wellId);
|
var telemetry = telemetryService.GetTelemetryByWellId(wellId);
|
||||||
|
|
||||||
if (telemetry is null)
|
if (telemetry is null)
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
var datesRange = (from d in db.DataSaubBases
|
try
|
||||||
where d.IdTelemetry == telemetry.Id
|
{
|
||||||
select d.Date).Union(
|
var datesRange = (from d in db.DataSaubBases
|
||||||
from m in db.Messages
|
where d.IdTelemetry == telemetry.Id
|
||||||
where m.IdTelemetry == telemetry.Id
|
select d.Date).Union(
|
||||||
select m.Date).ToList();
|
from m in db.Messages
|
||||||
|
where m.IdTelemetry == telemetry.Id
|
||||||
return new DatesRangeDto {
|
select m.Date).GroupBy(g => true)
|
||||||
From = datesRange is null ? DateTime.MinValue : datesRange.Min(),
|
.Select(g => new
|
||||||
To = datesRange is null ? DateTime.MaxValue : datesRange.Max()
|
{
|
||||||
};
|
From = g.Min(),
|
||||||
|
To = g.Max()
|
||||||
|
}).FirstOrDefault();
|
||||||
|
return new DatesRangeDto { From = datesRange.From, To = datesRange.To };
|
||||||
|
}
|
||||||
|
catch(InvalidOperationException)
|
||||||
|
{
|
||||||
|
return new DatesRangeDto { From = DateTime.MinValue, To = DateTime.MaxValue };
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private IEnumerable<string> GetSuitableReportNamesFromDb(int wellId, DateTime begin, DateTime end, int stepSeconds, int format)
|
private IEnumerable<string> GetSuitableReportNamesFromDb(int wellId, DateTime begin, DateTime end, int stepSeconds, int format)
|
||||||
|
Loading…
Reference in New Issue
Block a user