diff --git a/src/locales/en.json b/src/locales/en.json index db92ebd..eeb1cd1 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -199,12 +199,10 @@ "search": "Search", "search-train": "Train no.", "search-driver": "Driver name", - "driver-name": "Driver:", "route-length": "Route length:", "station-count": "Stations:", - "begins-at": "Begins at:", - "terminates-at": "Terminates at:", - "terminates-at-actual": "Terminates at (actual time):", + "dispatcher-name": "Created by", + "timetable-day": "Timetable created at", "timetable-active": "ACTIVE", "timetable-fulfilled": "FULFILLED", "timetable-abandoned": "ABANDONED" diff --git a/src/locales/pl.json b/src/locales/pl.json index b9fc051..1630ed8 100644 --- a/src/locales/pl.json +++ b/src/locales/pl.json @@ -199,12 +199,10 @@ "search": "Szukaj", "search-train": "Numer pociągu", "search-driver": "Nick maszynisty", - "driver-name": "Maszynista:", "route-length": "Kilometraż:", "station-count": "Stacje:", - "begins-at": "Rozpoczęcie:", - "terminates-at": "Zakończenie (planowe):", - "terminates-at-actual": "Zakończenie (rzeczywiste):", + "dispatcher-name": "Wystawiony przez dyżurnego", + "timetable-day": "Rozkład z dnia", "timetable-active": "AKTYWNY", "timetable-fulfilled": "WYPEŁNIONY", "timetable-abandoned": "PORZUCONY" diff --git a/src/mixins/dateMixin.ts b/src/mixins/dateMixin.ts index d2cc1c3..84a7956 100644 --- a/src/mixins/dateMixin.ts +++ b/src/mixins/dateMixin.ts @@ -3,14 +3,29 @@ import { defineComponent } from 'vue'; export default defineComponent({ methods: { localeDate(dateString: string, locale: string) { - return new Date(dateString).toLocaleDateString(locale == 'pl' ? 'pl-PL' : 'en-GB', { - weekday: "long", - day: "numeric", - month: "2-digit", - year: "numeric", - hour:"2-digit", - minute: "2-digit" - }) + return new Date(dateString).toLocaleDateString(locale == 'pl' ? 'pl-PL' : 'en-GB', { + weekday: "long", + day: "numeric", + month: "2-digit", + year: "numeric", + hour: "2-digit", + minute: "2-digit" + }) + }, + + localeDay(dateString: string, locale: string) { + return new Date(dateString).toLocaleDateString(locale == 'pl' ? 'pl-PL' : 'en-GB', { + day: "numeric", + month: "2-digit", + year: "numeric" + }) + }, + + localeTime(dateString: string, locale: string) { + return new Date(dateString).toLocaleTimeString(locale == 'pl' ? 'pl-PL' : 'en-GB', { + hour: "2-digit", + minute: "2-digit" + }) } } }) diff --git a/src/views/JournalView.vue b/src/views/JournalView.vue index 08597e0..651f665 100644 --- a/src/views/JournalView.vue +++ b/src/views/JournalView.vue @@ -22,21 +22,25 @@
- {{ item.trainCategoryCode }} - {{ item.trainNo }} + {{ item.trainCategoryCode }}  + {{ item.trainNo }} + | {{ item.driverName }} + | {{ item.timetableId }}
{{ item.route.replace('|', ' - ') }}
+
+
- {{ i > 0 ? ' - ' : '' }} {{ scenery.name }} + {{ i > 0 ? ' > ' : '' }} {{ scenery.name }}
@@ -59,11 +63,34 @@
-
-
- {{ $t('history.driver-name') }} - {{ item.driverName }} +
+
{{ $t('history.timetable-day') }} {{ localeDay(item.beginDate, $i18n.locale) }}
+ + + {{ item.route.split('|')[0] }}: + + {{ localeTime(item.scheduledBeginDate, $i18n.locale) }} + + {{ localeTime(item.beginDate, $i18n.locale) }} • + + + {{ item.route.split('|').slice(-1)[0] }}: + {{ $t('history.timetable-abandoned') }} + + + {{ localeTime(item.scheduledEndDate, $i18n.locale) }} + + {{ localeTime(item.endDate, $i18n.locale) }} + + +
+ {{ $t('history.dispatcher-name') }} {{ item.authorName }}
+
+ +
{{ $t('history.route-length') }} {{ !item.fulfilled ? item.currentDistance + ' /' : '' }} @@ -75,21 +102,6 @@ {{ item.confirmedStopsCount }} / {{ item.allStopsCount }}
- -
- {{ $t('history.begins-at') }} - {{ localeDate(item.beginDate, $i18n.locale) }} -
- -
- {{ $t('history.terminates-at') }} - {{ localeDate(item.scheduledEndDate, $i18n.locale) }} -
- -
- {{ $t('history.terminates-at-actual') }} - {{ localeDate(item.endDate, $i18n.locale) }} -
@@ -150,6 +162,9 @@ interface TimetableHistory { terminated: boolean; fulfilled: boolean; + + authorName?: string; + authorId?: number; } const initFilters = { @@ -266,8 +281,6 @@ export default defineComponent({ if (this.sorterActive.id == 'distance') queries.push('sortBy=routeDistance'); else if (this.sorterActive.id == 'total-stops') queries.push('sortBy=allStopsCount'); - console.log(queries); - try { const responseData: APIResponse | null = await (await axios.get(`${API_URL}?${queries.join('&')}`)).data; @@ -384,6 +397,10 @@ export default defineComponent({ } } +.schedule-dates > * { + margin-right: 0.25em; +} + li, .history_warning { background: #202020;