Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/exports/sq/SQRelationExporter.java @ 8541:c0334399625b
(issue1753) Add measurements to CSV export
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Fri, 13 Feb 2015 12:35:18 +0100 |
parents | e4606eae8ea5 |
children | 4eb1a3c71579 |
comparison
equal
deleted
inserted
replaced
8540:422a78fbb4df | 8541:c0334399625b |
---|---|
28 import org.dive4elements.artifacts.CallMeta; | 28 import org.dive4elements.artifacts.CallMeta; |
29 | 29 |
30 import org.dive4elements.river.artifacts.model.CalculationResult; | 30 import org.dive4elements.river.artifacts.model.CalculationResult; |
31 import org.dive4elements.river.artifacts.model.sq.SQFractionResult; | 31 import org.dive4elements.river.artifacts.model.sq.SQFractionResult; |
32 import org.dive4elements.river.artifacts.model.sq.SQResult; | 32 import org.dive4elements.river.artifacts.model.sq.SQResult; |
33 import org.dive4elements.river.artifacts.model.sq.SQ; | |
33 import org.dive4elements.river.artifacts.model.sq.SQRelationJRDataSource; | 34 import org.dive4elements.river.artifacts.model.sq.SQRelationJRDataSource; |
34 import org.dive4elements.river.artifacts.model.Parameters; | 35 import org.dive4elements.river.artifacts.model.Parameters; |
35 import org.dive4elements.river.artifacts.model.DateRange; | 36 import org.dive4elements.river.artifacts.model.DateRange; |
36 import org.dive4elements.river.artifacts.access.SQRelationAccess; | 37 import org.dive4elements.river.artifacts.access.SQRelationAccess; |
37 | 38 |
100 "export.sqrelation.csv.info.param.e"; | 101 "export.sqrelation.csv.info.param.e"; |
101 | 102 |
102 public static final String INFO_PARAM_F = | 103 public static final String INFO_PARAM_F = |
103 "export.sqrelation.csv.info.param.f"; | 104 "export.sqrelation.csv.info.param.f"; |
104 | 105 |
106 public static final String INFO_Q = | |
107 "export.sqrelation.csv.info.q"; | |
108 | |
109 public static final String INFO_S_KG = | |
110 "export.sqrelation.csv.info.s_kg"; | |
111 | |
112 public static final String INFO_DATE = | |
113 "export.sqrelation.csv.info.date"; | |
114 | |
105 public static final String CSV_PARAMETER = | 115 public static final String CSV_PARAMETER = |
106 "export.sqrelation.csv.header.parameter"; | 116 "export.sqrelation.csv.header.parameter"; |
107 | 117 |
108 public static final String CSV_STATION = | 118 public static final String CSV_STATION = |
109 "export.sqrelation.csv.header.station"; | 119 "export.sqrelation.csv.header.station"; |
144 public static final String CSV_QMAX = | 154 public static final String CSV_QMAX = |
145 "export.sqrelation.csv.header.qmax"; | 155 "export.sqrelation.csv.header.qmax"; |
146 | 156 |
147 public static final String CSV_SD = | 157 public static final String CSV_SD = |
148 "export.sqrelation.csv.header.sd"; | 158 "export.sqrelation.csv.header.sd"; |
159 | |
160 public static final String CSV_S_KG = | |
161 "export.sqrelation.csv.header.s_kg"; | |
162 | |
163 public static final String CSV_Q = | |
164 "export.sqrelation.csv.header.q"; | |
165 | |
166 public static final String CSV_DATE = | |
167 "export.sqrelation.csv.header.date"; | |
149 | 168 |
150 public static final String PDF_TITLE= | 169 public static final String PDF_TITLE= |
151 "export.sqrelation.pdf.title"; | 170 "export.sqrelation.pdf.title"; |
152 | 171 |
153 public static final String PDF_HEADER_MODE = | 172 public static final String PDF_HEADER_MODE = |
182 msg(CSV_QMAX), | 201 msg(CSV_QMAX), |
183 msg(CSV_COEFF_R), | 202 msg(CSV_COEFF_R), |
184 msg(CSV_N_TOTAL), | 203 msg(CSV_N_TOTAL), |
185 msg(CSV_N_OUTLIERS), | 204 msg(CSV_N_OUTLIERS), |
186 msg(CSV_C_DUAN), | 205 msg(CSV_C_DUAN), |
187 msg(CSV_C_FERGUSON) | 206 msg(CSV_C_FERGUSON), |
207 msg(CSV_S_KG), | |
208 msg(CSV_Q), | |
209 msg(CSV_DATE) | |
188 }); | 210 }); |
189 } | 211 } |
190 | 212 |
191 @Override | 213 @Override |
192 protected void writeCSVData(CSVWriter writer) { | 214 protected void writeCSVData(CSVWriter writer) { |
205 msg(INFO_PARAM_A), | 227 msg(INFO_PARAM_A), |
206 msg(INFO_PARAM_B), | 228 msg(INFO_PARAM_B), |
207 msg(INFO_PARAM_C), | 229 msg(INFO_PARAM_C), |
208 msg(INFO_PARAM_D), | 230 msg(INFO_PARAM_D), |
209 msg(INFO_PARAM_E), | 231 msg(INFO_PARAM_E), |
210 msg(INFO_PARAM_F) | 232 msg(INFO_PARAM_F), |
233 msg(INFO_S_KG), | |
234 msg(INFO_Q), | |
235 msg(INFO_DATE) | |
211 }); | 236 }); |
212 | 237 |
213 writeCSVHeader(writer); | 238 writeCSVHeader(writer); |
214 | 239 |
215 for (SQResult [] results: data) { | 240 for (SQResult [] results: data) { |
227 NumberFormat sqAFormatter = Formatter.getSQRelationA(context); | 252 NumberFormat sqAFormatter = Formatter.getSQRelationA(context); |
228 NumberFormat sqBFormatter = Formatter.getSQRelationB(context); | 253 NumberFormat sqBFormatter = Formatter.getSQRelationB(context); |
229 NumberFormat fThreeFormatter = Formatter.getFormatter(context, 3, 3); | 254 NumberFormat fThreeFormatter = Formatter.getFormatter(context, 3, 3); |
230 NumberFormat fTwoFormatter = Formatter.getFormatter(context, 2, 2); | 255 NumberFormat fTwoFormatter = Formatter.getFormatter(context, 2, 2); |
231 NumberFormat fZeroFormatter = Formatter.getFormatter(context, 0, 0); | 256 NumberFormat fZeroFormatter = Formatter.getFormatter(context, 0, 0); |
257 DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, | |
258 Resources.getLocale(context.getMeta())); | |
232 | 259 |
233 for (int i = 0; i < SQResult.NUMBER_FRACTIONS; ++i) { | 260 for (int i = 0; i < SQResult.NUMBER_FRACTIONS; ++i) { |
234 SQFractionResult fraction = result.getFraction(i); | 261 SQFractionResult fraction = result.getFraction(i); |
235 | 262 |
236 String name = result.getFractionName(i); | 263 String name = result.getFractionName(i); |
254 | 281 |
255 | 282 |
256 o = String.valueOf(fraction.totalNumOutliers()); | 283 o = String.valueOf(fraction.totalNumOutliers()); |
257 t = String.valueOf(fraction.numMeasurements()); | 284 t = String.valueOf(fraction.numMeasurements()); |
258 | 285 |
259 retval.add(new String[] { | 286 for (SQ sq: fraction.getMeasurements()) { |
260 km, | 287 retval.add(new String[] { |
261 name, | 288 km, |
262 a, | 289 name, |
263 b, | 290 a, |
264 sd, // 4 | 291 b, |
265 max_q, // 5 | 292 sd, // 4 |
266 r2, // 6 | 293 max_q, // 5 |
267 t, // 7 | 294 r2, // 6 |
268 o, // 8 | 295 t, // 7 |
269 c_duan, // 9 | 296 o, // 8 |
270 c_ferguson // 10 | 297 c_duan, // 9 |
271 }); | 298 c_ferguson, // 10 |
299 sqAFormatter.format(sq.getS()), | |
300 fZeroFormatter.format(sq.getQ()), | |
301 df.format(sq.getDate()) | |
302 }); | |
303 } | |
304 | |
272 } | 305 } |
273 return retval; | 306 return retval; |
274 } | 307 } |
275 | 308 |
276 | 309 |