mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-29 23:28:11 +00:00
feat(intercity): show intercity cargo across every train
Intercity bookings never get their own train — they ride whichever import/export train passes through their corridor — so the work is scattered across other people's schedules and there was nowhere to see it as a whole. The per-schedule ride-along panel answers "what can THIS train carry"; this answers "what is happening to intercity cargo". Purely additive: the existing ride-along panel and the schedule detail page are untouched, and loading/unloading still happens there, where the train's position is confirmed. This is a read-only view that points back to it. Each row carries both ends' facility status, because a booking whose origin or destination has no equipment can never be worked there — the operator should see that while the train is still coming, not when the load is refused. Those bookings are counted and called out. New GET /train-scheduling/intercity/bookings; the type is IntercityRideAlongRow, not IntercityBookingRow, which already means the per-schedule candidate row. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -393,6 +393,15 @@ export const trainSchedulingService = {
|
||||
return unwrap(response.data);
|
||||
},
|
||||
|
||||
listIntercityBookings: async (): Promise<
|
||||
import("@/types/trainScheduling").IntercityRideAlongRow[]
|
||||
> => {
|
||||
const response = await client.get<
|
||||
import("@/types/trainScheduling").IntercityRideAlongRow[]
|
||||
>(URL_CONSTANTS.TRAIN_SCHEDULING.INTERCITY_BOOKINGS);
|
||||
return response.data ?? [];
|
||||
},
|
||||
|
||||
getIntercityCandidates: async (
|
||||
scheduleId: string,
|
||||
): Promise<IntercityCandidatesResult> => {
|
||||
|
||||
Reference in New Issue
Block a user