Mercurial > dive4elements > river
diff backend/src/main/java/org/dive4elements/river/model/sinfo/InfrastructureValue.java @ 9115:a165cd63099f
Added datacage select and chart display for river infrastructure heights loaded from database
author | mschaefer |
---|---|
date | Mon, 04 Jun 2018 11:55:08 +0200 |
parents | 50416a0df385 |
children | 1614cb14308f |
line wrap: on
line diff
--- a/backend/src/main/java/org/dive4elements/river/model/sinfo/InfrastructureValue.java Mon Jun 04 11:25:29 2018 +0200 +++ b/backend/src/main/java/org/dive4elements/river/model/sinfo/InfrastructureValue.java Mon Jun 04 11:55:08 2018 +0200 @@ -11,6 +11,7 @@ package org.dive4elements.river.model.sinfo; import java.io.Serializable; +import java.util.List; import javax.persistence.Column; import javax.persistence.Entity; @@ -22,7 +23,10 @@ import javax.persistence.SequenceGenerator; import javax.persistence.Table; +import org.dive4elements.river.backend.SessionHolder; import org.dive4elements.river.model.Attribute; +import org.hibernate.Query; +import org.hibernate.Session; /** @@ -121,4 +125,17 @@ public void setHeight(final Double height) { this.height = height; } + + /** + * Selects the infrastructure values of a data series in a km range from the database + */ + public static List<InfrastructureValue> getValues(final Infrastructure parent, final double kmLo, final double kmHi) { + final Session session = SessionHolder.HOLDER.get(); + final Query query = session.createQuery("FROM InfrastructureValue WHERE (infrastructure=:parent)" + + " AND (station >= :kmLo - 0.0001) AND (station <= :kmHi + 0.0001)"); + query.setParameter("parent", parent); + query.setParameter("kmLo", new Double(kmLo)); + query.setParameter("kmHi", new Double(kmHi)); + return query.list(); + } }