fix train builder and consolidation

This commit is contained in:
Marshal
2026-07-14 13:49:39 +00:00
parent 01459bd73c
commit 5cffe2860c
14 changed files with 1092 additions and 17 deletions

View File

@@ -184,10 +184,12 @@ import {
import { trainService, type Train } from "./trains.service";
import {
trainBuilderService,
type AdjustConsistPayload,
type AvailableTrain,
type BuildTrainPayload,
type BuiltTrainListFilters,
type BuiltTrainListResponse,
type ScheduleConsist,
type TrainComposition,
} from "./trainBuilder.service";
import { trainSchedulingService } from "./trainScheduling.service";
@@ -320,6 +322,30 @@ export const api = {
({ routeId }) => QUERY_KEYS.TRAIN_SCHEDULING.availableTrains(routeId),
),
scheduleConsist: endpoint<{ scheduleId: string }, ScheduleConsist>(
"train-scheduling",
"schedule-consist",
({ scheduleId }) =>
trainBuilderService.scheduleConsist(scheduleId).then((r) => r.data),
({ scheduleId }) => [
...QUERY_KEYS.TRAIN_SCHEDULING.ROOT,
"consist",
scheduleId,
],
),
adjustConsist: endpoint<
{ scheduleId: string; payload: AdjustConsistPayload },
ScheduleConsist
>(
"train-scheduling",
"adjust-consist",
({ scheduleId, payload }) =>
trainBuilderService.adjustConsist(scheduleId, payload).then((r) => r.data),
undefined,
() => TRAIN_BUILDER_INVALIDATIONS,
),
bookableSchedules: endpoint<
{ originYardId?: string | null; destinationYardId?: string | null },
BookableSchedule[]