diff backend/src/main/java/org/dive4elements/river/model/sinfo/Tkh.java @ 9032:1f63e9d3b0ec

New columns for bed_height, tkh and depth_evolution, a few syntactic corrections for Oracle
author mschaefer
date Fri, 27 Apr 2018 17:35:12 +0200
parents 6e5ff436febe
children 4c5eeaff554c
line wrap: on
line diff
--- a/backend/src/main/java/org/dive4elements/river/model/sinfo/Tkh.java	Fri Apr 27 11:34:04 2018 +0200
+++ b/backend/src/main/java/org/dive4elements/river/model/sinfo/Tkh.java	Fri Apr 27 17:35:12 2018 +0200
@@ -25,6 +25,7 @@
 import javax.persistence.OneToOne;
 import javax.persistence.SequenceGenerator;
 import javax.persistence.Table;
+import javax.persistence.Transient;
 
 import org.dive4elements.river.backend.SessionHolder;
 import org.dive4elements.river.model.River;
@@ -42,6 +43,38 @@
 @Table(name = "tkh")
 public class Tkh implements Serializable {
 
+    /**
+     * Possible values of the groupname column
+     *
+     */
+    public enum Group {
+        NONE(""), CALCULATION("berechnung"), MEASUREMENT("messung");
+
+        private final String dbvalue;
+
+        Group(final String dbvalue) {
+            this.dbvalue = dbvalue;
+        }
+
+        /**
+         * Value of the group's groupname column
+         */
+        public String getDbValue() {
+            return this.dbvalue;
+        }
+
+        /**
+         * Group for a groupname column value
+         */
+        public static Group forDbValue(final String dbvalue) {
+            for (final Group g : Group.values()) {
+                if (g.getDbValue().equals(dbvalue))
+                    return g;
+            }
+            return Group.NONE;
+        }
+    }
+
     /***** FIELDS *****/
 
     private static final long serialVersionUID = 5891445651697221261L;
@@ -52,6 +85,8 @@
 
     private String filename;
 
+    private transient Group group;
+
     private String kmrange_info;
 
     private String comment;
@@ -72,7 +107,7 @@
 
 
     public Tkh(final River river, final String filename, final String kmrange_info, final String comment, final Date day, final String sounding_info,
-            final String evaluation_by) {
+            final String evaluation_by, final Group group) {
         this.river = river;
         this.filename = filename;
         this.kmrange_info = kmrange_info;
@@ -80,6 +115,7 @@
         this.day = day;
         this.setSounding_info(sounding_info);
         this.setEvaluation_by(evaluation_by);
+        this.setGroup(group);
         this.columns = new ArrayList<>();
     }
 
@@ -116,6 +152,24 @@
         this.filename = filename;
     }
 
+    @Column(name = "groupname")
+    public String getGroupname() {
+        return this.group.getDbValue();
+    }
+
+    public void setGroupname(final String groupname) {
+        this.group = Group.forDbValue(groupname);
+    }
+
+    @Transient
+    public Group getGroup() {
+        return this.group;
+    }
+
+    public void setGroup(final Group group) {
+        this.group = group;
+    }
+
     @Column(name = "kmrange_info")
     public String getKmrange_info() {
         return this.kmrange_info;

http://dive4elements.wald.intevation.org