diff artifacts/src/main/java/org/dive4elements/river/artifacts/services/MeasurementStationInfoService.java @ 8412:17db08570637

SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
author Tom Gottfried <tom@intevation.de>
date Wed, 15 Oct 2014 19:20:26 +0200
parents e4606eae8ea5
children 71144e25a6c9
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/services/MeasurementStationInfoService.java	Wed Oct 15 14:58:46 2014 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/services/MeasurementStationInfoService.java	Wed Oct 15 19:20:26 2014 +0200
@@ -47,7 +47,8 @@
 
         Element egs = ec.create("measurement-stations");
 
-        List<MeasurementStation> mstations = river.getMeasurementStations();
+        List<MeasurementStation> mstations = MeasurementStation
+            .getStationsAtRiver(river);
 
         if (log.isDebugEnabled()) {
             log.debug("Loaded stations: " + mstations);
@@ -76,21 +77,21 @@
                 ec.addAttr(eg, "riverside", riverside, true);
             }
 
-            Double station = mstation.getStation();
-            if (station != null) {
-                ec.addAttr(eg, "station", Double.toString(station), true);
-            }
-
             Range range = mstation.getRange();
             if (range != null) {
                 BigDecimal a = range.getA();
-                if (a != null) {
-                    ec.addAttr(eg, "start", getStringValue(a), true);
+                BigDecimal b = range.getB();
+
+                // In case river is km_up, station is at larger value of range
+                if (b != null && river.getKmUp()) {
+                    ec.addAttr(eg, "start", getStringValue(b), true);
+                    ec.addAttr(eg, "end", getStringValue(a), true);
                 }
-
-                BigDecimal b = range.getB();
-                if (b != null) {
-                    ec.addAttr(eg, "end", getStringValue(b), true);
+                else {
+                    ec.addAttr(eg, "start", getStringValue(a), true);
+                    if (b != null) {
+                        ec.addAttr(eg, "end", getStringValue(b), true);
+                    }
                 }
             }
 
@@ -113,14 +114,20 @@
                 }
             }
 
-            String gaugename= mstation.getGaugeName();
-
+            String gaugename = mstation.getGaugeName();
             if (gaugename != null) {
                 Element egauge = ec.create("gauge");
                 ec.addAttr(egauge, "name", gaugename, true);
                 eg.appendChild(egauge);
             }
 
+            String comment = mstation.getComment();
+            if (comment != null) {
+                Element ecomment = ec.create("comment");
+                ec.addAttr(ecomment, "comment", comment, true);
+                eg.appendChild(ecomment);
+            }
+
             egs.appendChild(eg);
         }
 

http://dive4elements.wald.intevation.org