comparison backend/src/main/java/org/dive4elements/river/model/sinfo/Collision.java @ 9168:d2472018740c

Fixed dateformat with 4-digit year, added query method for collision years of a river
author mschaefer
date Thu, 21 Jun 2018 08:13:37 +0200
parents 623b51bf03d7
children
comparison
equal deleted inserted replaced
9167:cb3a91dc4e3b 9168:d2472018740c
156 final Session session = SessionHolder.HOLDER.get(); 156 final Session session = SessionHolder.HOLDER.get();
157 final Query query = session.createQuery("FROM Collision WHERE (id=:id)"); 157 final Query query = session.createQuery("FROM Collision WHERE (id=:id)");
158 query.setParameter("id", id); 158 query.setParameter("id", id);
159 return (Collision) query.list().get(0); 159 return (Collision) query.list().get(0);
160 } 160 }
161
162 /**
163 * Selects from the database the years of the collisions of a river
164 */
165 public static List<Integer> getYearsOfRiver(final River river) {
166 final Session session = SessionHolder.HOLDER.get();
167 final Query query = session.createQuery("SELECT c.year, COUNT(cv) AS count"
168 + " FROM Collision c INNER JOIN c.values cv"
169 + " WHERE c.river=:river"
170 + " GROUP BY c.year"
171 + " ORDER BY c.year");
172 query.setParameter("river", river);
173 final List<Integer> years = new ArrayList<>();
174 final List<Object[]> rows = query.list();
175 if (rows != null) {
176 for (int i = 0; i <= rows.size() - 1; i++) {
177 years.add(Integer.valueOf((int) rows.get(i)[0]));
178 }
179 }
180 return years;
181 }
161 } 182 }

http://dive4elements.wald.intevation.org