diff --git a/Services/TransportApiService.cs b/Services/TransportApiService.cs index c06e959..83ae225 100644 --- a/Services/TransportApiService.cs +++ b/Services/TransportApiService.cs @@ -25,12 +25,8 @@ namespace ShiftScheduler.Services if (apiResponse?.Connections.Count > 0) { - var allConnections = apiResponse.Connections.Select(MapToTransportConnection).ToList(); - - foreach (var connection in allConnections) - { - logger.LogDebug($"Found connection {connection}"); - } + var allConnections = apiResponse.Connections.Select(MapToTransportConnection).ToList(); + allConnections.ForEach(tc => logger.LogDebug($"Found connection {tc}")); var bestConnection = TransportConnectionCalculator.FindBestConnection( allConnections, new ConnectionPickArgument(shiftStartTime, config.SafetyBufferMinutes, config.MaxEarlyArrivalMinutes, config.MaxLateArrivalMinutes), logger); diff --git a/Services/TransportConnectionCalculator.cs b/Services/TransportConnectionCalculator.cs index 500b875..9a56933 100644 --- a/Services/TransportConnectionCalculator.cs +++ b/Services/TransportConnectionCalculator.cs @@ -50,6 +50,7 @@ public static class TransportConnectionCalculator var bestValidConnection = validConnections.Last(); if (bestValidConnection.ArrivalTime > earliestAcceptableTime) { + logger.LogDebug($"Found bestValidConnection {bestValidConnection}"); return bestValidConnection; } } @@ -57,9 +58,11 @@ public static class TransportConnectionCalculator // If no connections arrive before latest arrival time, check if any arrive within acceptable late range if (lateValidConnections.Count > 0) { + logger.LogDebug($"Found lateValidConnection {lateValidConnections.First()}"); return lateValidConnections.First(); } - return validConnections.FirstOrDefault(); + logger.LogDebug($"Use last valid connection {validConnections.LastOrDefault()}"); + return validConnections.LastOrDefault(); } } \ No newline at end of file