mirror of
https://github.com/Spythere/stacjownik.git
synced 2026-05-02 21:08:12 +00:00
JournalTimetables: dodano resetowanie filtrów
This commit is contained in:
@@ -52,7 +52,7 @@ import axios from 'axios';
|
|||||||
|
|
||||||
import DriverStats from './DriverStats.vue';
|
import DriverStats from './DriverStats.vue';
|
||||||
import Loading from '../Global/Loading.vue';
|
import Loading from '../Global/Loading.vue';
|
||||||
import { JournalFilter } from '../../types/Journal/JournalTimetablesTypes';
|
import { JournalFilter, JournalSorter } from '../../types/Journal/JournalTimetablesTypes';
|
||||||
import dateMixin from '../../mixins/dateMixin';
|
import dateMixin from '../../mixins/dateMixin';
|
||||||
import routerMixin from '../../mixins/routerMixin';
|
import routerMixin from '../../mixins/routerMixin';
|
||||||
import { DataStatus } from '../../scripts/enums/DataStatus';
|
import { DataStatus } from '../../scripts/enums/DataStatus';
|
||||||
@@ -61,7 +61,7 @@ import { TimetableHistory } from '../../scripts/interfaces/api/TimetablesAPIData
|
|||||||
import { URLs } from '../../scripts/utils/apiURLs';
|
import { URLs } from '../../scripts/utils/apiURLs';
|
||||||
import { useStore } from '../../store/store';
|
import { useStore } from '../../store/store';
|
||||||
import JournalOptions from './JournalOptions.vue';
|
import JournalOptions from './JournalOptions.vue';
|
||||||
import { JournalTimetableSearcher } from '../../types/Journal/JournalTimetablesTypes';
|
import { JorunalTimetableSearchType } from '../../types/Journal/JournalTimetablesTypes';
|
||||||
import modalTrainMixin from '../../mixins/modalTrainMixin';
|
import modalTrainMixin from '../../mixins/modalTrainMixin';
|
||||||
import imageMixin from '../../mixins/imageMixin';
|
import imageMixin from '../../mixins/imageMixin';
|
||||||
import JournalTimetablesList from './JournalTimetablesList.vue';
|
import JournalTimetablesList from './JournalTimetablesList.vue';
|
||||||
@@ -99,14 +99,14 @@ export default defineComponent({
|
|||||||
}),
|
}),
|
||||||
|
|
||||||
setup() {
|
setup() {
|
||||||
const sorterActive = ref({ id: 'timetableId', dir: -1 });
|
const sorterActive: JournalSorter = reactive({ id: 'timetableId', dir: 1 });
|
||||||
const journalFilterActive = ref(journalTimetableFilters[0]);
|
const journalFilterActive = ref(journalTimetableFilters[0]);
|
||||||
|
|
||||||
const searchersValues = reactive({
|
const searchersValues = reactive({
|
||||||
'search-train': '',
|
'search-train': '',
|
||||||
'search-driver': '',
|
'search-driver': '',
|
||||||
'search-date': '',
|
'search-date': '',
|
||||||
} as JournalTimetableSearcher);
|
} as JorunalTimetableSearchType);
|
||||||
|
|
||||||
const countFromIndex = ref(0);
|
const countFromIndex = ref(0);
|
||||||
const countLimit = 15;
|
const countLimit = 15;
|
||||||
@@ -153,9 +153,14 @@ export default defineComponent({
|
|||||||
},
|
},
|
||||||
|
|
||||||
resetOptions() {
|
resetOptions() {
|
||||||
Object.values(this.searchersValues).map((_) => '');
|
this.searchersValues['search-date'] = '';
|
||||||
|
this.searchersValues['search-driver'] = '';
|
||||||
|
this.searchersValues['search-train'] = '';
|
||||||
|
|
||||||
this.journalFilterActive = this.journalTimetableFilters[0];
|
this.journalFilterActive = this.journalTimetableFilters[0];
|
||||||
this.sorterActive.id = 'timetableId';
|
this.sorterActive.id = 'timetableId';
|
||||||
|
|
||||||
|
this.searchHistory();
|
||||||
},
|
},
|
||||||
|
|
||||||
searchHistory() {
|
searchHistory() {
|
||||||
@@ -190,7 +195,7 @@ export default defineComponent({
|
|||||||
|
|
||||||
async fetchHistoryData(
|
async fetchHistoryData(
|
||||||
props: {
|
props: {
|
||||||
searchers?: JournalTimetableSearcher;
|
searchers?: JorunalTimetableSearchType;
|
||||||
filter?: JournalFilter;
|
filter?: JournalFilter;
|
||||||
} = {}
|
} = {}
|
||||||
) {
|
) {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { JournalFilterType } from '../../scripts/enums/JournalFilterType';
|
import { JournalFilterType } from '../../scripts/enums/JournalFilterType';
|
||||||
|
|
||||||
export type JournalTimetableSearcher = {
|
export type JorunalTimetableSearchType = {
|
||||||
[key in 'search-driver' | 'search-train' | 'search-date']: string;
|
[key in 'search-driver' | 'search-train' | 'search-date']: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -8,4 +8,9 @@ export interface JournalFilter {
|
|||||||
id: JournalFilterType;
|
id: JournalFilterType;
|
||||||
filterSection: string;
|
filterSection: string;
|
||||||
isActive: boolean;
|
isActive: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export interface JournalSorter {
|
||||||
|
id: 'timetableId' | 'beginDate' | 'distance' | 'total-stops';
|
||||||
|
dir: -1 | 1;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user