# HG changeset patch # User Tom Gottfried # Date 1362743494 -3600 # Node ID 20f9b633900efd6136b7fa6e69f9ad14dca19d31 # Parent d4c276bbbc6cf119f82b50d27f725335512de4ef# Parent 48d1b12b9fc6151e9bbdfd43f34762d4ba4c0071 merge diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/doc/schema/postgresql-minfo.sql --- a/flys-backend/doc/schema/postgresql-minfo.sql Fri Mar 08 12:33:07 2013 +0100 +++ b/flys-backend/doc/schema/postgresql-minfo.sql Fri Mar 08 12:51:34 2013 +0100 @@ -20,15 +20,17 @@ CONSTRAINT fk_unit FOREIGN KEY (unit_id) REFERENCES units(id) ); -CREATE SEQUENCE BED_HEIGHT_TYPE_SEQ; +-- lookup table for bedheight types CREATE TABLE bed_height_type ( id int NOT NULL, - name VARCHAR(16) NOT NULL, - description VARCHAR(255), + type VARCHAR(64) NOT NULL, PRIMARY KEY(id) ); - +INSERT INTO bed_height_type VALUES (1, 'Querprofil') +INSERT INTO bed_height_type VALUES (2, 'Flächenpeilung') +INSERT INTO bed_height_type VALUES (3, 'Flächen- u. Querprofilpeilungen') +INSERT INTO bed_height_type VALUES (4, 'DGM') CREATE SEQUENCE BED_HEIGHT_SINGLE_ID_SEQ; @@ -281,78 +283,6 @@ ); -CREATE SEQUENCE WATERLEVEL_ID_SEQ; - -CREATE TABLE waterlevel ( - id int NOT NULL, - river_id int NOT NULL, - unit_id int NOT NULL, - description VARCHAR(256), - PRIMARY KEY (id), - CONSTRAINT fk_w_river_id FOREIGN KEY (river_id) REFERENCES rivers(id) ON DELETE CASCADE, - CONSTRAINT fk_w_unit_id FOREIGN KEY (unit_id) REFERENCES units(id) -); - - -CREATE SEQUENCE WATERLEVEL_Q_RANGES_ID_SEQ; - -CREATE TABLE waterlevel_q_range ( - id int NOT NULL, - waterlevel_id int NOT NULL, - q NUMERIC NOT NULL, - PRIMARY KEY (id), - CONSTRAINT fk_wqr_waterlevel_id FOREIGN KEY (waterlevel_id) REFERENCES waterlevel(id) ON DELETE CASCADE -); - - -CREATE SEQUENCE WATERLEVEL_VALUES_ID_SEQ; - -CREATE TABLE waterlevel_values ( - id int NOT NULL, - waterlevel_q_range_id int NOT NULL, - station NUMERIC NOT NULL, - w NUMERIC NOT NULL, - PRIMARY KEY (id), - CONSTRAINT fk_wv_waterlevel_q_range_id FOREIGN KEY (waterlevel_q_range_id) REFERENCES waterlevel_q_range(id) ON DELETE CASCADE -); - - -CREATE SEQUENCE WATERLEVEL_DIFFERENCE_ID_SEQ; - -CREATE TABLE waterlevel_difference ( - id int NOT NULL, - river_id int NOT NULL, - unit_id int NOT NULL, - description VARCHAR(256), - PRIMARY KEY (id), - CONSTRAINT fk_wd_river_id FOREIGN KEY (river_id) REFERENCES rivers (id) ON DELETE CASCADE, - CONSTRAINT fk_wd_unit_id FOREIGN KEY (unit_id) REFERENCES units(id) -); - - -CREATE SEQUENCE WATERLEVEL_DIFF_COLUMN_ID_SEQ; - -CREATE TABLE waterlevel_difference_column ( - id int NOT NULL, - difference_id int NOT NULL, - description VARCHAR(256), - PRIMARY KEY (id), - CONSTRAINT fk_wdc_difference_id FOREIGN KEY (difference_id) REFERENCES waterlevel_difference (id) ON DELETE CASCADE -); - - -CREATE SEQUENCE WATERLEVEL_DIFF_VALUES_ID_SEQ; - -CREATE TABLE waterlevel_difference_values ( - id int NOT NULL, - column_id int NOT NULL, - station NUMERIC NOT NULL, - value NUMERIC NOT NULL, - PRIMARY KEY (id), - CONSTRAINT fk_wdv_column_id FOREIGN KEY (column_id) REFERENCES waterlevel_difference_column (id) ON DELETE CASCADE -); - - CREATE SEQUENCE MEASUREMENT_STATION_ID_SEQ; CREATE TABLE measurement_station ( id int NOT NULL, diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/doc/schema/postgresql.sql --- a/flys-backend/doc/schema/postgresql.sql Fri Mar 08 12:33:07 2013 +0100 +++ b/flys-backend/doc/schema/postgresql.sql Fri Mar 08 12:51:34 2013 +0100 @@ -166,13 +166,28 @@ ); -- WST files +--lookup table for wst kinds +CREATE TABLE wst_kinds ( + id int PRIMARY KEY NOT NULL, + kind VARCHAR(64) NOT NULL +); +INSERT INTO wst_kinds (id, kind) VALUES (0, 'basedata'); +INSERT INTO wst_kinds (id, kind) VALUES (1, 'basedata_additionals_marks'); +INSERT INTO wst_kinds (id, kind) VALUES (2, 'basedata_fixations_wst'); +INSERT INTO wst_kinds (id, kind) VALUES (3, 'basedata_officials'); +INSERT INTO wst_kinds (id, kind) VALUES (4, 'basedata_heightmarks-points-relative_points'); +INSERT INTO wst_kinds (id, kind) VALUES (5, 'basedata_flood-protections_relative_points'); +INSERT INTO wst_kinds (id, kind) VALUES (6, 'morpho_waterlevel-differences'); +INSERT INTO wst_kinds (id, kind) VALUES (7, 'morpho_waterlevels'); + + CREATE SEQUENCE WSTS_ID_SEQ; CREATE TABLE wsts ( id int PRIMARY KEY NOT NULL, river_id int NOT NULL REFERENCES rivers(id) ON DELETE CASCADE, description VARCHAR(256) NOT NULL, - kind int NOT NULL DEFAULT 0, + kind int NOT NULL REFERENCES wst_kinds(id) DEFAULT 0, -- TODO: more meta infos UNIQUE (river_id, description) ); diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/src/main/java/de/intevation/flys/backend/FLYSCredentials.java --- a/flys-backend/src/main/java/de/intevation/flys/backend/FLYSCredentials.java Fri Mar 08 12:33:07 2013 +0100 +++ b/flys-backend/src/main/java/de/intevation/flys/backend/FLYSCredentials.java Fri Mar 08 12:51:34 2013 +0100 @@ -66,12 +66,6 @@ import de.intevation.flys.model.SedimentYieldValue; import de.intevation.flys.model.TimeInterval; import de.intevation.flys.model.Unit; -import de.intevation.flys.model.Waterlevel; -import de.intevation.flys.model.WaterlevelDifference; -import de.intevation.flys.model.WaterlevelDifferenceColumn; -import de.intevation.flys.model.WaterlevelDifferenceValue; -import de.intevation.flys.model.WaterlevelQRange; -import de.intevation.flys.model.WaterlevelValue; import de.intevation.flys.model.Wst; import de.intevation.flys.model.WstColumn; import de.intevation.flys.model.WstColumnQRange; @@ -189,12 +183,6 @@ SQRelationValue.class, TimeInterval.class, Unit.class, - Waterlevel.class, - WaterlevelDifference.class, - WaterlevelDifferenceColumn.class, - WaterlevelDifferenceValue.class, - WaterlevelQRange.class, - WaterlevelValue.class, WstColumn.class, WstColumnQRange.class, WstColumnValue.class, diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/src/main/java/de/intevation/flys/model/Waterlevel.java --- a/flys-backend/src/main/java/de/intevation/flys/model/Waterlevel.java Fri Mar 08 12:33:07 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,113 +0,0 @@ -package de.intevation.flys.model; - -import java.io.Serializable; -import java.util.List; - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import javax.persistence.GeneratedValue; -import javax.persistence.Column; -import javax.persistence.SequenceGenerator; -import javax.persistence.GenerationType; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; -import javax.persistence.OneToMany; - -import org.apache.log4j.Logger; - - - -/** Mapped Waterlevel. */ -@Entity -@Table(name = "waterlevel") -public class Waterlevel -implements Serializable -{ - private static Logger logger = Logger.getLogger(Waterlevel.class); - - private Integer id; - - private River river; - - private Unit unit; - - private String description; - - private List qRanges; - - - public Waterlevel() { - } - - public Waterlevel(River river, Unit unit) { - this.river = river; - this.unit = unit; - } - - public Waterlevel(River river, Unit unit, String description) { - this(river, unit); - this.description = description; - } - - @Id - @SequenceGenerator( - name = "SEQUENCE_WATERLEVEL_ID_SEQ", - sequenceName = "WATERLEVEL_ID_SEQ", - allocationSize = 1) - @GeneratedValue( - strategy = GenerationType.SEQUENCE, - generator = "SEQUENCE_WATERLEVEL_ID_SEQ") - @Column(name = "id") - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - @OneToOne - @JoinColumn(name = "river_id" ) - public River getRiver() { - return river; - } - - public void setRiver(River river) { - this.river = river; - } - - @OneToOne - @JoinColumn(name = "unit_id") - public Unit getUnit() { - return unit; - } - - public void setUnit(Unit unit) { - this.unit = unit; - } - - @Column(name = "description") - public String getDescription() { - return description; - } - - public void setDescription(String description) { - this.description = description; - } - - @OneToMany - @JoinColumn(name="waterlevel_id") - public List getQRanges() { - return qRanges; - } - - public void setQRanges(List qRanges) { - this.qRanges = qRanges; - } - - public void addQRange(WaterlevelQRange qRange) { - qRanges.add(qRange); - } -} -// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/src/main/java/de/intevation/flys/model/WaterlevelDifference.java --- a/flys-backend/src/main/java/de/intevation/flys/model/WaterlevelDifference.java Fri Mar 08 12:33:07 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,119 +0,0 @@ -package de.intevation.flys.model; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import javax.persistence.GeneratedValue; -import javax.persistence.Column; -import javax.persistence.SequenceGenerator; -import javax.persistence.GenerationType; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; -import javax.persistence.OneToMany; - -import org.apache.log4j.Logger; - - -@Entity -@Table(name = "waterlevel_difference") -public class WaterlevelDifference -implements Serializable -{ - private static Logger logger = Logger.getLogger(WaterlevelDifference.class); - - private Integer id; - - private River river; - - private Unit unit; - - private List columns; - - private String description; - - - public WaterlevelDifference() { - columns = new ArrayList(); - } - - - public WaterlevelDifference(River river, Unit unit) { - this(); - - this.river = river; - this.unit = unit; - } - - - public WaterlevelDifference(River river, Unit unit, String description) { - this(river, unit); - - this.description = description; - } - - - @Id - @SequenceGenerator( - name = "SEQUENCE_WATERLEVEL_DIFFERENCE_ID_SEQ", - sequenceName = "WATERLEVEL_DIFFERENCE_ID_SEQ", - allocationSize = 1) - @GeneratedValue( - strategy = GenerationType.SEQUENCE, - generator = "SEQUENCE_WATERLEVEL_DIFFERENCE_ID_SEQ") - @Column(name = "id") - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - @OneToOne - @JoinColumn(name = "river_id" ) - public River getRiver() { - return river; - } - - public void setRiver(River river) { - this.river = river; - } - - @OneToOne - @JoinColumn(name = "unit_id") - public Unit getUnit() { - return unit; - } - - public void setUnit(Unit unit) { - this.unit = unit; - } - - @Column(name = "description") - public String getDescription() { - return description; - } - - public void setDescription(String description) { - this.description = description; - } - - @OneToMany - @JoinColumn(name = "difference_id") - public List getColumns() { - return columns; - } - - public void setColumns(List columns) { - this.columns = columns; - } - - public void addColumn(WaterlevelDifferenceColumn column) { - this.columns.add(column); - } -} -// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/src/main/java/de/intevation/flys/model/WaterlevelDifferenceColumn.java --- a/flys-backend/src/main/java/de/intevation/flys/model/WaterlevelDifferenceColumn.java Fri Mar 08 12:33:07 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,104 +0,0 @@ -package de.intevation.flys.model; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import javax.persistence.GeneratedValue; -import javax.persistence.Column; -import javax.persistence.SequenceGenerator; -import javax.persistence.GenerationType; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; -import javax.persistence.OneToMany; - -import org.apache.log4j.Logger; - - -@Entity -@Table(name = "waterlevel_difference_column") -public class WaterlevelDifferenceColumn -implements Serializable -{ - private static Logger logger = - Logger.getLogger(WaterlevelDifferenceColumn.class); - - - private Integer id; - - private WaterlevelDifference difference; - - private List values; - - private String description; - - - public WaterlevelDifferenceColumn() { - values = new ArrayList(); - } - - public WaterlevelDifferenceColumn( - WaterlevelDifference difference, - String description - ) { - this(); - - this.difference = difference; - this.description = description; - } - - - @Id - @SequenceGenerator( - name = "SEQUENCE_WATERLEVEL_DIFF_COLUMN_ID_SEQ", - sequenceName = "WATERLEVEL_DIFF_COLUMN_ID_SEQ", - allocationSize = 1) - @GeneratedValue( - strategy = GenerationType.SEQUENCE, - generator = "SEQUENCE_WATERLEVEL_DIFF_COLUMN_ID_SEQ") - @Column(name = "id") - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - @OneToOne - @JoinColumn(name = "difference_id" ) - public WaterlevelDifference getDifference() { - return difference; - } - - public void setDifference(WaterlevelDifference difference) { - this.difference = difference; - } - - @Column(name = "description") - public String getDescription() { - return description; - } - - public void setDescription(String description) { - this.description = description; - } - - @OneToMany - @JoinColumn(name = "column_id") - public List getValues() { - return values; - } - - public void setValues(List values) { - this.values = values; - } - - public void addValue(WaterlevelDifferenceValue value) { - this.values.add(value); - } -} -// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/src/main/java/de/intevation/flys/model/WaterlevelDifferenceValue.java --- a/flys-backend/src/main/java/de/intevation/flys/model/WaterlevelDifferenceValue.java Fri Mar 08 12:33:07 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,94 +0,0 @@ -package de.intevation.flys.model; - -import java.io.Serializable; - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import javax.persistence.GeneratedValue; -import javax.persistence.Column; -import javax.persistence.SequenceGenerator; -import javax.persistence.GenerationType; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; - -import org.apache.log4j.Logger; - - -@Entity -@Table(name = "waterlevel_difference_values") -public class WaterlevelDifferenceValue -implements Serializable -{ - private static Logger logger = - Logger.getLogger(WaterlevelDifferenceValue.class); - - - private Integer id; - - private WaterlevelDifferenceColumn column; - - private Double station; - private Double value; - - - public WaterlevelDifferenceValue() { - } - - public WaterlevelDifferenceValue( - WaterlevelDifferenceColumn column, - Double station, - Double value - ) { - this.column = column; - this.station = station; - this.value = value; - } - - - @Id - @SequenceGenerator( - name = "SEQUENCE_WATERLEVEL_DIFF_VALUES_ID_SEQ", - sequenceName = "WATERLEVEL_DIFF_VALUES_ID_SEQ", - allocationSize = 1) - @GeneratedValue( - strategy = GenerationType.SEQUENCE, - generator = "SEQUENCE_WATERLEVEL_DIFF_VALUES_ID_SEQ") - @Column(name = "id") - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - @OneToOne - @JoinColumn(name = "column_id" ) - public WaterlevelDifferenceColumn getColumn() { - return column; - } - - public void setColumn(WaterlevelDifferenceColumn column) { - this.column = column; - } - - @Column(name = "station") - public Double getStation() { - return station; - } - - public void setStation(Double station) { - this.station = station; - } - - @Column(name = "value") - public Double getValue() { - return value; - } - - public void setValue(Double value) { - this.value = value; - } -} -// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/src/main/java/de/intevation/flys/model/WaterlevelQRange.java --- a/flys-backend/src/main/java/de/intevation/flys/model/WaterlevelQRange.java Fri Mar 08 12:33:07 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ -package de.intevation.flys.model; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import javax.persistence.GeneratedValue; -import javax.persistence.Column; -import javax.persistence.SequenceGenerator; -import javax.persistence.GenerationType; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; -import javax.persistence.OneToMany; - -import org.apache.log4j.Logger; - - - - -@Entity -@Table(name = "waterlevel_q_range") -public class WaterlevelQRange -implements Serializable -{ - private static Logger logger = Logger.getLogger(WaterlevelQRange.class); - - private Integer id; - - private Waterlevel waterlevel; - - private Double q; - - private List values; - - - public WaterlevelQRange() { - this.values = new ArrayList(); - } - - public WaterlevelQRange(Waterlevel waterlevel, Double q) { - this(); - this.q = q; - this.waterlevel = waterlevel; - } - - - @Id - @SequenceGenerator( - name = "SEQUENCE_WATERLEVEL_Q_RANGE_ID_SEQ", - sequenceName = "WATERLEVEL_Q_RANGES_ID_SEQ", - allocationSize = 1) - @GeneratedValue( - strategy = GenerationType.SEQUENCE, - generator = "SEQUENCE_WATERLEVEL_Q_RANGE_ID_SEQ") - @Column(name = "id") - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - @OneToOne - @JoinColumn(name = "waterlevel_id" ) - public Waterlevel getWaterlevel() { - return waterlevel; - } - - public void setWaterlevel(Waterlevel waterlevel) { - this.waterlevel = waterlevel; - } - - @Column(name = "q") - public Double getQ() { - return q; - } - - public void setQ(Double q) { - this.q = q; - } - - @OneToMany - @Column(name = "waterlevel_q_range_id") - public List getValues() { - return values; - } - - public void setValues(List values) { - this.values = values; - } - - public void addValue(WaterlevelValue value) { - values.add(value); - } -} -// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 48d1b12b9fc6 -r 20f9b633900e flys-backend/src/main/java/de/intevation/flys/model/WaterlevelValue.java --- a/flys-backend/src/main/java/de/intevation/flys/model/WaterlevelValue.java Fri Mar 08 12:33:07 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,90 +0,0 @@ -package de.intevation.flys.model; - -import java.io.Serializable; - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import javax.persistence.GeneratedValue; -import javax.persistence.Column; -import javax.persistence.SequenceGenerator; -import javax.persistence.GenerationType; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; - -import org.apache.log4j.Logger; - - - - -@Entity -@Table(name = "waterlevel_values") -public class WaterlevelValue -implements Serializable -{ - private static Logger logger = Logger.getLogger(WaterlevelValue.class); - - private Integer id; - - private WaterlevelQRange qrange; - - private Double station; - private Double w; - - - public WaterlevelValue() { - } - - public WaterlevelValue(WaterlevelQRange qrange, Double station, Double w) { - this.qrange = qrange; - this.station = station; - this.w = w; - } - - - @Id - @SequenceGenerator( - name = "SEQUENCE_WATERLEVEL_VALUES_ID_SEQ", - sequenceName = "WATERLEVEL_VALUES_ID_SEQ", - allocationSize = 1) - @GeneratedValue( - strategy = GenerationType.SEQUENCE, - generator = "SEQUENCE_WATERLEVEL_VALUES_ID_SEQ") - @Column(name = "id") - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - @OneToOne - @JoinColumn(name = "waterlevel_q_range_id" ) - public WaterlevelQRange getQrange() { - return qrange; - } - - public void setQrange(WaterlevelQRange qrange) { - this.qrange = qrange; - } - - @Column(name = "station") - public Double getStation() { - return station; - } - - public void setStation(Double station) { - this.station = station; - } - - @Column(name = "w") - public Double getW() { - return w; - } - - public void setW(Double w) { - this.w = w; - } -} -// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :