diff artifacts/src/main/java/org/dive4elements/river/artifacts/services/DynamicMainValuesService.java @ 9454:4cccbd32b680

Bundu.wst.UD -> Q-Values are set on Client side now
author gernotbelger
date Thu, 23 Aug 2018 16:32:28 +0200
parents bc9a45d2b1fa
children 879c902c4a2d
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/services/DynamicMainValuesService.java	Thu Aug 23 11:02:47 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/services/DynamicMainValuesService.java	Thu Aug 23 16:32:28 2018 +0200
@@ -125,7 +125,7 @@
         final int yearCnt = DateUtils.getYearFromDate(endTime) - DateUtils.getYearFromDate(startTime) + 1;
         double glq20 = Double.NaN;
         for (int i = 0, k = 0; (i <= 364) && (k <= qs.size() - 1); i++, k += yearCnt) {
-            final NamedMainValue nmv = fetchNamedQMainValue(i, session, mainValues.get(0).getMainValue().getType());
+            final NamedMainValue nmv = fetchNamedQMainValue(i, session);
             if (nmv != null) {
                 final double q = getDurationQ(qs, k);
                 mainValues.add(createMainValue(gauge, nmv, q, timeperiod));
@@ -175,11 +175,16 @@
     /**
      * Fetches a named main Q(duration) value from the database, if existing
      */
-    private NamedMainValue fetchNamedQMainValue(final int days, final Session session, final MainValueType qType) {
-        final NamedMainValue nmv = NamedMainValue.fetchByNameAndType(Integer.toString(days), MainValueTypeKey.DURATION.getName(), session);
-        // final NamedMainValue nmv = new NamedMainValue(Integer.toString(days), qType);
-        if (nmv != null)
-            nmv.setOfficialLines(new ArrayList<OfficialLine>());
+    private NamedMainValue fetchNamedQMainValue(final int days, final Session session) {
+
+        NamedMainValue nmv = NamedMainValue.fetchByNameAndType(Integer.toString(days), MainValueTypeKey.DURATION.getName(), session);
+        if (nmv == null) {
+            final MainValueType mvt = new MainValueType(MainValueTypeKey.INVISIBLE_D.name());
+            nmv = new NamedMainValue(Integer.toString(days), mvt);
+        }
+
+        nmv.setOfficialLines(new ArrayList<OfficialLine>());
+
         return nmv;
     }
 

http://dive4elements.wald.intevation.org