aboutsummaryrefslogtreecommitdiff
path: root/src/Enmarcha.Backend/Controllers
diff options
context:
space:
mode:
authorAriel Costas Guerrero <ariel@costas.dev>2026-03-22 13:20:00 +0100
committerAriel Costas Guerrero <ariel@costas.dev>2026-03-22 13:20:00 +0100
commit757960525576038898d655b630cbaac44671f599 (patch)
tree8ac06ec119b29a331cfa8e5b234220048077533c /src/Enmarcha.Backend/Controllers
parent5f3e83939f334562c31ce570d7189e748c275ddf (diff)
Add nextstopprocessing to Lugo, fix deleted stops breaking home page
Diffstat (limited to 'src/Enmarcha.Backend/Controllers')
-rw-r--r--src/Enmarcha.Backend/Controllers/ArrivalsController.cs19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/Enmarcha.Backend/Controllers/ArrivalsController.cs b/src/Enmarcha.Backend/Controllers/ArrivalsController.cs
index 9216004..16bc047 100644
--- a/src/Enmarcha.Backend/Controllers/ArrivalsController.cs
+++ b/src/Enmarcha.Backend/Controllers/ArrivalsController.cs
@@ -243,11 +243,13 @@ public partial class ArrivalsController : ControllerBase
var stopIds = ids.Split(',', StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries);
var requestContent = StopsInfoContent.Query(new StopsInfoContent.Args(stopIds));
- var request = new HttpRequestMessage(HttpMethod.Post, $"{_config.OpenTripPlannerBaseUrl}/gtfs/v1");
- request.Content = JsonContent.Create(new GraphClientRequest
+ var request = new HttpRequestMessage(HttpMethod.Post, $"{_config.OpenTripPlannerBaseUrl}/gtfs/v1")
{
- Query = requestContent
- });
+ Content = JsonContent.Create(new GraphClientRequest
+ {
+ Query = requestContent
+ })
+ };
var response = await _httpClient.SendAsync(request);
var responseBody = await response.Content.ReadFromJsonAsync<GraphClientResponse<StopsInfoResponse>>();
@@ -257,11 +259,14 @@ public partial class ArrivalsController : ControllerBase
return StatusCode(500, "Error fetching stops data");
}
- var result = responseBody.Data.Stops.ToDictionary(
- s => s.GtfsId,
+ // TODO: Remove stops that are null, since that means the feed publisher deleted them.
+ var result = responseBody.Data.Stops
+ .Where(s => s != null)
+ .ToDictionary(
+ s => s!.GtfsId,
s =>
{
- var feedId = s.GtfsId.Split(':', 2)[0];
+ var feedId = s!.GtfsId.Split(':', 2)[0];
var (fallbackColor, _) = _feedService.GetFallbackColourForFeed(feedId);
return new