Merge pull request 'ГГД/Сетевой график - сделать, чтоб график - "Дни со старта" линия план строилась с 0. Изменить метод GET/api/well/{idWell}/tvd' (#308) from #28855145/tvd-graph-from-start-date into dev

Reviewed-on: http://test.digitaldrilling.ru:8080/DDrilling/AsbCloudServer/pulls/308
This commit is contained in:
Никита Фролов 2024-08-13 10:44:21 +05:00
commit d0ff0a0d1c

View File

@ -431,6 +431,10 @@ public class OperationsStatService : IOperationsStatService
int? iLastMatch = null;
int iLastFact = 0;
var nptHours = 0d;
DateTimeOffset? firstDateStartFact = Fact!.DateStart;
DateTimeOffset? firstDateStartPlan = Plan?.DateStart;
for (int i = 0; i < wellOperations.Length; i++)
{
var item = wellOperations[i];
@ -441,7 +445,13 @@ public class OperationsStatService : IOperationsStatService
if (plan is not null)
{
planFactPredict.Plan = Convert(plan, tzOffsetHours);
planFactPredict.Plan.Day = (planFactPredict.Plan.DateStart - dateStart).TotalDays;
if (!firstDateStartPlan.HasValue) {
firstDateStartPlan = planFactPredict.Plan.DateStart;
}
planFactPredict.Plan.Day = (planFactPredict.Plan.DateStart - firstDateStartPlan.Value).TotalDays;
if (fact is not null)
iLastMatch = i;
}
@ -451,8 +461,9 @@ public class OperationsStatService : IOperationsStatService
if(WellOperationCategory.NonProductiveTimeSubIds.Contains(fact.IdCategory))
nptHours += fact.DurationHours;
planFactPredict.Fact = Convert(fact, tzOffsetHours);
planFactPredict.Fact.Day = (planFactPredict.Fact.DateStart - dateStart).TotalDays;
planFactPredict.Fact = Convert(fact, tzOffsetHours);
planFactPredict.Fact.Day = (planFactPredict.Fact.DateStart - firstDateStartFact.Value).TotalDays;
planFactPredict.Fact.NptHours = nptHours;
iLastFact = i;
}