Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java @ 3308:5ccd51ca11ce
SQ relation: Fixed problem with string operation precedence.
flys-artifacts/trunk@4997 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Fri, 13 Jul 2012 14:25:16 +0000 |
parents | e06036fdf0c7 |
children | 8af1111af180 |
comparison
equal
deleted
inserted
replaced
3307:81a98f360553 | 3308:5ccd51ca11ce |
---|---|
38 "RSIEB17", "RSIEB18", "RSIEB19", "RSIEB20", | 38 "RSIEB17", "RSIEB18", "RSIEB19", "RSIEB20", |
39 "RSIEB21", "REST" | 39 "RSIEB21", "REST" |
40 }; | 40 }; |
41 | 41 |
42 public static final String SQL_MEASSURE = | 42 public static final String SQL_MEASSURE = |
43 "SELECT " + | 43 ("SELECT " + |
44 "m.TSAND AS TSAND," + | 44 "m.TSAND AS TSAND," + |
45 "m.TSCHWEB AS TSCHWEB," + | 45 "m.TSCHWEB AS TSCHWEB," + |
46 "m.CSCHWEB AS CSCHWEB," + | 46 "m.CSCHWEB AS CSCHWEB," + |
47 "m.Q AS Q," + | 47 "m.Q AS Q," + |
48 "%GSIEBSATZ%" + | 48 "%GSIEBSATZ%" + |
54 "LEFT JOIN SSIEBUNG ss ON gs.gsiebsatzid = ss.gewaesserid " + | 54 "LEFT JOIN SSIEBUNG ss ON gs.gsiebsatzid = ss.gewaesserid " + |
55 "WHERE " + | 55 "WHERE " + |
56 "g.name = :river_name AND " + | 56 "g.name = :river_name AND " + |
57 "s.km BETWEEN :location - 0.001 AND :location + 0.001 AND " + | 57 "s.km BETWEEN :location - 0.001 AND :location + 0.001 AND " + |
58 "m.datum BETWEEN :from AND :to AND " + | 58 "m.datum BETWEEN :from AND :to AND " + |
59 "m.Q IS NOT NULL" | 59 "m.Q IS NOT NULL") |
60 .replace("%GSIEBSATZ%", projection("gs", GSIEBSATZ)) | 60 .replace("%GSIEBSATZ%", projection("gs", GSIEBSATZ)) |
61 .replace("%SSIEBUNG%", projection("ss", SSIEBUNG)); | 61 .replace("%SSIEBUNG%", projection("ss", SSIEBUNG)); |
62 | 62 |
63 private static final String projection( | 63 private static final String projection( |
64 String prefix, | 64 String prefix, |
104 Session session, | 104 Session session, |
105 String river, | 105 String river, |
106 double location, | 106 double location, |
107 DateRange dateRange | 107 DateRange dateRange |
108 ) { | 108 ) { |
109 boolean debug = log.isDebugEnabled(); | |
110 | |
111 if (debug) { | |
112 log.debug(SQL_MEASSURE); | |
113 } | |
114 | |
109 SQLQuery query = session.createSQLQuery(SQL_MEASSURE) | 115 SQLQuery query = session.createSQLQuery(SQL_MEASSURE) |
110 .addScalar("TSAND", StandardBasicTypes.DOUBLE) | 116 .addScalar("TSAND", StandardBasicTypes.DOUBLE) |
111 .addScalar("TSCHWEB", StandardBasicTypes.DOUBLE) | 117 .addScalar("TSCHWEB", StandardBasicTypes.DOUBLE) |
112 .addScalar("CSCHWEB", StandardBasicTypes.DOUBLE) | 118 .addScalar("CSCHWEB", StandardBasicTypes.DOUBLE) |
113 .addScalar("Q", StandardBasicTypes.DOUBLE); | 119 .addScalar("Q", StandardBasicTypes.DOUBLE); |