Правка расчета сводной статистики по бурильщикам

This commit is contained in:
Olga Nemt 2024-04-01 16:11:20 +05:00
parent c03b818d49
commit 5bf30956c8

View File

@ -57,7 +57,7 @@ internal class SubsystemService : ISubsystemService
var result = new List<DrillerDetectedOperationStatDto>(); var result = new List<DrillerDetectedOperationStatDto>();
var schedulePage = await scheduleRepository.GetPageAsync(request, token); var schedulePage = await scheduleRepository.GetPageAsync(request, token);
var wells = await wellService.GetAsync(new WellRequest { Ids = request.IdsWells }, token); var wells = await wellService.GetAsync(new WellRequest { Ids = request.IdsWells }, token);
foreach (var schedule in schedulePage) foreach (var schedule in schedulePage)
{ {
var idWell = schedule.IdWell; var idWell = schedule.IdWell;
@ -68,21 +68,15 @@ internal class SubsystemService : ISubsystemService
var detectedOperations = await detectedOperationService var detectedOperations = await detectedOperationService
.GetOperationsAsync(byWellRequest, token); .GetOperationsAsync(byWellRequest, token);
var groupByDriller = detectedOperations var detectedOperationsByCurrentDriller = detectedOperations.Where(d => d.Driller?.Id == schedule.IdDriller);
.Where(operation => operation.Driller is not null) var drillerOperationsStat = await CalcStatAsync(detectedOperationsByCurrentDriller, token);
.GroupBy(operation => operation.Driller); var dto = new DrillerDetectedOperationStatDto
foreach (var entry in groupByDriller)
{ {
var drillerOperationsStat = await CalcStatAsync(entry, token); Statistic = drillerOperationsStat,
var dto = new DrillerDetectedOperationStatDto Schedule = schedule,
{ Well = well,
Statistic = drillerOperationsStat, };
Schedule = schedule, result.Add(dto);
Well = well,
};
result.Add(dto);
}
} }
return result; return result;