diff client/src/store/gauges.js @ 3501:c5c7cc24fe72

client: spuc12: implemented nash sutcliffe for forcast vs reality accuracy indicator
author Markus Kottlaender <markus@intevation.de>
date Tue, 28 May 2019 11:28:38 +0200
parents d7cc5cda82a9
children 796b923269a6
line wrap: on
line diff
--- a/client/src/store/gauges.js	Tue May 28 11:25:34 2019 +0200
+++ b/client/src/store/gauges.js	Tue May 28 11:28:38 2019 +0200
@@ -30,6 +30,7 @@
     longtermInterval: [],
     yearWaterlevels: [],
     nashSutcliffe: null,
+    nashSutcliffeOverview: [],
     dateFrom: dateFrom,
     dateTo: dateTo,
     yearCompare: new Date().getFullYear()
@@ -45,6 +46,11 @@
       return state.gauges.find(
         g => g.properties.isrs_code === state.selectedGaugeISRS
       );
+    },
+    nashSutcliffeOverview: state => feature => {
+      return state.nashSutcliffeOverview.find(
+        d => d.feature.get("id") === feature.get("id")
+      );
     }
   },
   mutations: {
@@ -72,6 +78,14 @@
     nashSutcliffe: (state, data) => {
       state.nashSutcliffe = data;
     },
+    addNashSutcliffeOverviewEntry: (state, data) => {
+      let existingIndex = state.nashSutcliffeOverview.findIndex(
+        d => d.feature.get("id") === data.feature.get("id")
+      );
+      if (existingIndex !== -1)
+        state.nashSutcliffeOverview.splice(existingIndex, 1);
+      state.nashSutcliffeOverview.push(data);
+    },
     dateFrom: (state, dateFrom) => {
       state.dateFrom = dateFrom;
     },
@@ -263,6 +277,19 @@
             reject(error);
           });
       });
+    },
+    loadNashSutcliffeForOverview(context, isrsCode) {
+      return new Promise((resolve, reject) => {
+        HTTP.get(`/data/nash-sutcliffe/${isrsCode}`, {
+          headers: { "X-Gemma-Auth": localStorage.getItem("token") }
+        })
+          .then(response => {
+            resolve(response.data);
+          })
+          .catch(error => {
+            reject(error);
+          });
+      });
     }
   }
 };