From 0fae903884e04aaf721360e968a470c9bdd1d48a Mon Sep 17 00:00:00 2001 From: Spythere Date: Sun, 6 Jul 2025 15:50:30 +0200 Subject: [PATCH] chore: departure real line number (wip) --- src/components/Timetable/TimetableContent.vue | 62 ++++++++++++------- src/types/common.types.ts | 3 +- 2 files changed, 42 insertions(+), 23 deletions(-) diff --git a/src/components/Timetable/TimetableContent.vue b/src/components/Timetable/TimetableContent.vue index f1138dd..014b610 100644 --- a/src/components/Timetable/TimetableContent.vue +++ b/src/components/Timetable/TimetableContent.vue @@ -60,18 +60,35 @@ - {{ - row.lastRowRef == null || row.lastRowRef.realLine != row.realLine - ? row.realLine - : ' ' - }} +
+ + + + + + + + + + + + +
+ {{ + row.lastRowRef == null || + row.lastRowRef.arrivalLineNumber != row.arrivalLineNumber + ? row.arrivalLineNumber + : ' ' + }} +
+
@@ -94,7 +111,7 @@ (row.lastRowRef.departureSpeedL == row.arrivalSpeedL && row.lastRowRef.departureSpeedP == row.arrivalSpeedP && row.lastRowRef.departureTracks == row.arrivalTracks && - row.lastRowRef.realLine == row.realLine) + row.lastRowRef.arrivalLineNumber == row.arrivalLineNumber) }" > {{ row.arrivalKm }} @@ -412,7 +429,8 @@ const computedTimetableRows = computed(() => { let arrivalKm = 0, arrivalTracks = 0, departureTracks = 2, - realLineNo = 0, + arrivalLineNumber = 0, + departureLineNumber = 0, abbrevs = [] as string[]; if (currentPath.departureLineData) { @@ -421,17 +439,16 @@ const computedTimetableRows = computed(() => { ? Math.min(currentPath.departureLineData.routeSpeedExit, stockVmax) : departureSpeedL; - // departureSpeed = Math.min(currentPath.departureLineData.routeSpeed, stockVmax); departureTracks = currentPath.departureLineData.routeTracks; - // arrivalSpeed = departureSpeed; - arrivalSpeedL = departureSpeedL; arrivalSpeedP = departureSpeedP; arrivalTracks = departureTracks; - realLineNo = currentPath.departureLineData?.realLineNo ?? 0; + departureLineNumber = currentPath.departureLineData?.realLineNo ?? 0; + arrivalLineNumber = departureLineNumber; + abbrevs = getAbbrevs(currentPath.departureLineData); } @@ -452,12 +469,13 @@ const computedTimetableRows = computed(() => { : arrivalSpeedP; arrivalTracks = currentPath.arrivalLineData.routeTracks; - realLineNo = currentPath.arrivalLineData.realLineNo ?? 0; + arrivalLineNumber = currentPath.arrivalLineData.realLineNo ?? 0; abbrevs = getAbbrevs(currentPath.arrivalLineData); } departureSpeedL = arrivalSpeedL; departureSpeedP = arrivalSpeedP; + departureLineNumber = arrivalLineNumber; departureTracks = arrivalTracks; } @@ -485,7 +503,9 @@ const computedTimetableRows = computed(() => { departureSpeedL = correctedDepartureSpeedL; departureSpeedP = correctedDepartureSpeedP; - realLineNo = internalRouteInfo.realLineNo ?? realLineNo; + arrivalLineNumber = internalRouteInfo.realLineNo ?? arrivalLineNumber; + departureLineNumber = internalRouteInfo.realLineNo ?? departureLineNumber; + abbrevs = getAbbrevs(internalRouteInfo); correctedDepartureTracks = internalRouteInfo.routeTracks; @@ -495,6 +515,7 @@ const computedTimetableRows = computed(() => { arrivalSpeedL = departureSpeedL; arrivalSpeedP = departureSpeedP; arrivalTracks = departureTracks; + arrivalLineNumber = departureLineNumber; } } @@ -511,7 +532,8 @@ const computedTimetableRows = computed(() => { stopTime: stop.stopTime ? (stop.departureTimestamp - stop.arrivalTimestamp) / 60000 : 0, stopType: stop.stopType, sceneryName: currentPath.sceneryName, - realLine: realLineNo == 0 ? '' : realLineNo.toString(), + arrivalLineNumber: arrivalLineNumber == 0 ? '' : arrivalLineNumber.toString(), + departureLineNumber: departureLineNumber == 0 ? '' : departureLineNumber.toString(), driveTime: lastDepartureTimestamp ? stop.arrivalTimestamp - lastDepartureTimestamp : 0, abbrevs: [...pointAbbrevs, ...abbrevs], @@ -582,7 +604,8 @@ const computedTimetableRows = computed(() => { ? Math.min(currentPath.departureLineData.routeSpeedExit, stockVmax) : stopRows[i].departureSpeedL; - stopRows[i].realLine = currentPath.departureLineData.realLineNo?.toString() ?? ''; + stopRows[i].arrivalLineNumber = + currentPath.departureLineData.realLineNo?.toString() ?? ''; if (stopRows[i].isMain || stopRows[i].pointName.endsWith(', podg')) { stopRows[i].departureSpeedL = Math.min( @@ -604,11 +627,6 @@ const computedTimetableRows = computed(() => { // currentPath.departureLineData.isRouteSBL // ); - /* - if (currentPath.departureLineData.isRouteSBL) - arrivalKm = stop.stopDistance + (currentPath.departureLineData.routeSpeed <= 130 ? 1.0 : 2.0); - else */ - abbrevs = getAbbrevs(currentPath.departureLineData); stopRows[i].abbrevs = abbrevs; break; diff --git a/src/types/common.types.ts b/src/types/common.types.ts index 5bfce95..92f14a9 100644 --- a/src/types/common.types.ts +++ b/src/types/common.types.ts @@ -134,7 +134,8 @@ export interface StopRow { stopType: string; scheduledArrivalDate: Date | null; scheduledDepartureDate: Date | null; - realLine: string; + arrivalLineNumber: string; + departureLineNumber: string; driveTime: number; abbrevs: string[]; sceneryName: string;