Mercurial > gemma
changeset 2748:c6695d6e9334
import_overview: filtering date interval via backend
author | Thomas Junk <thomas.junk@intevation.de> |
---|---|
date | Thu, 21 Mar 2019 11:34:48 +0100 |
parents | fb5deecb77f1 |
children | cd789302b3e2 |
files | client/src/components/importoverview/ImportOverview.vue client/src/store/imports.js |
diffstat | 2 files changed, 23 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/client/src/components/importoverview/ImportOverview.vue Wed Mar 20 17:19:59 2019 +0100 +++ b/client/src/components/importoverview/ImportOverview.vue Thu Mar 21 11:34:48 2019 +0100 @@ -136,7 +136,8 @@ endOfDay, addDays, subDays, - isFuture + isFuture, + format } from "date-fns"; export default { @@ -191,6 +192,7 @@ this.laterPossible = true; break; } + this.loadLogs(); }, later() { let start, end; @@ -235,6 +237,7 @@ this.endDate = isFuture(end) ? now : end; break; } + this.loadLogs(); }, filteredImports() { return this.imports.filter(i => { @@ -246,7 +249,11 @@ loadLogs() { this.loading = true; this.$store - .dispatch("imports/getImports", this.filters) + .dispatch("imports/getImports", { + filter: this.filters, + from: format(this.startDate, "YYYY-MM-DDTHH:mm:ss.SSS"), + to: format(this.endDate, "YYYY-MM-DDTHH:mm:ss.SSS") + }) .then(() => { this.loading = false; }) @@ -346,9 +353,10 @@ this.endDate = now; break; } + this.loadLogs(); }, filters() { - this.$store.dispatch("imports/getImports", this.filters); + this.loadLogs(); } }, mounted() {
--- a/client/src/store/imports.js Wed Mar 20 17:19:59 2019 +0100 +++ b/client/src/store/imports.js Thu Mar 21 11:34:48 2019 +0100 @@ -215,15 +215,25 @@ }); }); }, - getImports({ commit }, filter) { + getImports({ commit }, options) { + let { filter, from, to } = options; let queryParams = ""; const hasWarning = filter.includes("warning"); filter = filter.filter(x => x != "warning"); if (filter && filter.length > 0) { queryParams = "?states=" + filter.join(","); if (hasWarning) queryParams += "&warnings=true"; + queryParams += "&from=" + from; + queryParams += "&to=" + to; } else { - if (hasWarning) queryParams += "?warnings=true"; + if (hasWarning) { + queryParams += "?warnings=true"; + queryParams += "&from=" + from; + queryParams += "&to=" + to; + } else { + queryParams += "?from=" + from; + queryParams += "&to=" + to; + } } return new Promise((resolve, reject) => { HTTP.get("/imports" + queryParams, {