Compare commits

..

7 Commits

Author SHA1 Message Date
Spythere 1cfe073bab Merge pull request #83 from Spythere/development
Wersja 1.22.3
2024-03-17 18:38:27 +01:00
Spythere e3b72c81ea bump: 1.22.3 2024-03-17 18:37:58 +01:00
Spythere 5552995564 fix: duplikujące się aktywne RJ scenerii 2024-03-17 18:37:45 +01:00
Spythere 623d5dd2ce fix: RJ scenerii offline 2024-03-17 17:33:19 +01:00
Spythere 6992b998a8 Merge pull request #82 from Spythere/development
Wersja 1.22.2
2024-03-17 16:47:52 +01:00
Spythere 669975c68e hotfixy 2024-03-17 16:42:35 +01:00
Spythere 084823de44 fix pobierania danych 2024-03-16 22:13:38 +01:00
6 changed files with 20 additions and 10 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "stacjownik", "name": "stacjownik",
"version": "1.22.1", "version": "1.22.3",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
+6
View File
@@ -73,6 +73,12 @@ export default defineComponent({
}, },
async mounted() { async mounted() {
window.addEventListener('focus', () => {
if (Date.now() - this.apiStore.lastFetchData.getTime() < 15000) return;
this.apiStore.fetchActiveData();
});
watch( watch(
() => this.store.blockScroll, () => this.store.blockScroll,
(value) => { (value) => {
+1 -1
View File
@@ -84,7 +84,7 @@ export default defineComponent({
regionList() { regionList() {
return regionsJSON.map((region) => { return regionsJSON.map((region) => {
const regionStationCount = this.store.activeSceneryList.filter( const regionStationCount = this.store.activeSceneryList.filter(
(scenery) => scenery.region == region.id (scenery) => scenery.region == region.id && scenery.dispatcherId != -1
).length; ).length;
const regionTrainCount = const regionTrainCount =
@@ -74,7 +74,7 @@
class="timetable-item" class="timetable-item"
v-else v-else
v-for="scheduledTrain in computedScheduledTrains" v-for="scheduledTrain in computedScheduledTrains"
:key="scheduledTrain.trainId" :key="scheduledTrain.trainId + scheduledTrain.stopInfo.arrivalTimestamp"
tabindex="0" tabindex="0"
@click.prevent.stop="selectModalTrain(scheduledTrain.trainId, $event.currentTarget)" @click.prevent.stop="selectModalTrain(scheduledTrain.trainId, $event.currentTarget)"
@keydown.enter.prevent="selectModalTrain(scheduledTrain.trainId, $event.currentTarget)" @keydown.enter.prevent="selectModalTrain(scheduledTrain.trainId, $event.currentTarget)"
+7 -6
View File
@@ -24,6 +24,8 @@ export const useApiStore = defineStore('apiStore', {
donatorsData: [] as API.Donators.Response, donatorsData: [] as API.Donators.Response,
sceneryData: [] as StationJSONData[], sceneryData: [] as StationJSONData[],
lastFetchData: new Date(),
client: undefined as AxiosInstance | undefined, client: undefined as AxiosInstance | undefined,
activeDataScheduler: undefined as number | undefined activeDataScheduler: undefined as number | undefined
@@ -64,20 +66,19 @@ export const useApiStore = defineStore('apiStore', {
async setupActiveDataFetcher() { async setupActiveDataFetcher() {
if (this.activeDataScheduler) return; if (this.activeDataScheduler) return;
this.dataStatuses.connection = Status.Data.Loading;
this.activeDataScheduler = window.setInterval(() => { this.activeDataScheduler = window.setInterval(() => {
if (UPDATE_SECONDS.includes(new Date().getSeconds())) { this.fetchActiveData();
this.fetchActiveData(); }, 25000);
}
}, 1000);
}, },
async fetchActiveData() { async fetchActiveData() {
if (!this.activeData) this.dataStatuses.connection = Status.Data.Loading;
try { try {
const response = await this.client!.get<API.ActiveData.Response>('api/getActiveData'); const response = await this.client!.get<API.ActiveData.Response>('api/getActiveData');
this.activeData = response.data; this.activeData = response.data;
this.lastFetchData = new Date();
this.dataStatuses.connection = Status.Data.Loaded; this.dataStatuses.connection = Status.Data.Loaded;
console.log('Fetching active data at ' + new Date().toLocaleTimeString('pl-PL')); console.log('Fetching active data at ' + new Date().toLocaleTimeString('pl-PL'));
+4 -1
View File
@@ -107,7 +107,10 @@ export const useMainStore = defineStore('store', {
if ( if (
acc.findIndex((v) => v.name == name && v.region == train.region) != -1 || acc.findIndex((v) => v.name == name && v.region == train.region) != -1 ||
apiStore.activeData?.activeSceneries?.findIndex( apiStore.activeData?.activeSceneries?.findIndex(
(sc) => sc.stationName === name && sc.region == train.region (sc) =>
sc.stationName === name &&
sc.region == train.region &&
Date.now() - sc.lastSeen < 1000 * 60 * 2
) != -1 ) != -1
) )
return acc; return acc;