Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/exports/minfo/BedDifferenceExporter.java @ 7915:931dffefc3dd
flys/issue1628: Adjusted the PDF export.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Wed, 04 Jun 2014 15:34:22 +0200 |
parents | db1a2b14c32d |
children | c0843a658474 |
comparison
equal
deleted
inserted
replaced
7914:db1a2b14c32d | 7915:931dffefc3dd |
---|---|
28 import net.sf.jasperreports.engine.JRException; | 28 import net.sf.jasperreports.engine.JRException; |
29 | 29 |
30 import org.dive4elements.artifacts.CallMeta; | 30 import org.dive4elements.artifacts.CallMeta; |
31 import org.dive4elements.river.artifacts.D4EArtifact; | 31 import org.dive4elements.river.artifacts.D4EArtifact; |
32 import org.dive4elements.river.artifacts.access.BedDifferencesAccess; | 32 import org.dive4elements.river.artifacts.access.BedDifferencesAccess; |
33 import org.dive4elements.river.artifacts.access.RiverAccess; | |
33 import org.dive4elements.artifacts.common.utils.Config; | 34 import org.dive4elements.artifacts.common.utils.Config; |
34 import org.dive4elements.river.artifacts.resources.Resources; | 35 import org.dive4elements.river.artifacts.resources.Resources; |
35 import org.dive4elements.river.artifacts.model.CalculationResult; | 36 import org.dive4elements.river.artifacts.model.CalculationResult; |
36 import org.dive4elements.river.artifacts.model.minfo.BedDiffYearResult; | 37 import org.dive4elements.river.artifacts.model.minfo.BedDiffYearResult; |
37 import org.dive4elements.river.artifacts.model.minfo.BedDifferencesResult; | 38 import org.dive4elements.river.artifacts.model.minfo.BedDifferencesResult; |
38 import org.dive4elements.river.artifacts.model.minfo.BedDifferenceJRDataSource; | 39 import org.dive4elements.river.artifacts.model.minfo.BedDifferenceJRDataSource; |
39 import org.dive4elements.river.exports.AbstractExporter; | 40 import org.dive4elements.river.exports.AbstractExporter; |
40 import org.dive4elements.river.utils.Formatter; | 41 import org.dive4elements.river.utils.Formatter; |
41 import org.dive4elements.river.utils.RiverUtils; | |
42 | 42 |
43 import au.com.bytecode.opencsv.CSVWriter; | 43 import au.com.bytecode.opencsv.CSVWriter; |
44 | 44 |
45 public class BedDifferenceExporter | 45 public class BedDifferenceExporter |
46 extends AbstractExporter | 46 extends AbstractExporter |
135 protected void addMetaData(BedDifferenceJRDataSource source) { | 135 protected void addMetaData(BedDifferenceJRDataSource source) { |
136 CallMeta meta = context.getMeta(); | 136 CallMeta meta = context.getMeta(); |
137 | 137 |
138 D4EArtifact arti = (D4EArtifact) master; | 138 D4EArtifact arti = (D4EArtifact) master; |
139 | 139 |
140 source.addMetaData ("river", RiverUtils.getRivername(arti)); | 140 //source.addMetaData ("river", RiverUtils.getRivername(arti)); |
141 source.addMetaData ("river", new RiverAccess(arti).getRiverName()); | |
141 | 142 |
142 Locale locale = Resources.getLocale(meta); | 143 Locale locale = Resources.getLocale(meta); |
143 DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, locale); | 144 DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, locale); |
144 | 145 |
145 source.addMetaData("date", df.format(new Date())); | 146 source.addMetaData("date", df.format(new Date())); |
158 | 159 |
159 source.addMetaData("differences", StringUtils.join( | 160 source.addMetaData("differences", StringUtils.join( |
160 access.getDifferenceArtifactNamePairs(), "\n")); | 161 access.getDifferenceArtifactNamePairs(), "\n")); |
161 | 162 |
162 source.addMetaData("unit", msg(CSV_HEADER_DIFF, "cm")); | 163 source.addMetaData("unit", msg(CSV_HEADER_DIFF, "cm")); |
164 source.addMetaData("diffpairheader", | |
165 msg(CSV_HEADER_DIFF_PAIR, "Difference pair")); | |
163 } | 166 } |
164 | 167 |
165 | 168 |
166 protected void writeCSVHeader(CSVWriter writer) { | 169 protected void writeCSVHeader(CSVWriter writer) { |
167 logger.debug("writeCSVHeader()"); | 170 logger.debug("writeCSVHeader()"); |
186 addMetaData(source); | 189 addMetaData(source); |
187 NumberFormat kmf = Formatter.getCalculationKm(context.getMeta()); | 190 NumberFormat kmf = Formatter.getCalculationKm(context.getMeta()); |
188 NumberFormat mf = Formatter.getMeterFormat(context); | 191 NumberFormat mf = Formatter.getMeterFormat(context); |
189 for (BedDifferencesResult result: results) { | 192 for (BedDifferencesResult result: results) { |
190 double[][] kms = result.getDifferencesData(); | 193 double[][] kms = result.getDifferencesData(); |
194 String desc = result.getDiffDescription(); | |
191 for (int j = 0; j < kms[0].length; j++) { | 195 for (int j = 0; j < kms[0].length; j++) { |
192 source.addData(new String[] { | 196 source.addData(new String[] { |
193 kmf.format(kms[0][j]), mf.format(kms[1][j])}); | 197 kmf.format(kms[0][j]), |
198 mf.format(kms[1][j]), | |
199 desc }); | |
194 } | 200 } |
195 } | 201 } |
196 return source; | 202 return source; |
197 } | 203 } |
198 | 204 |
206 JASPER_FILE, | 212 JASPER_FILE, |
207 "/jasper/beddifference_en.jasper"); | 213 "/jasper/beddifference_en.jasper"); |
208 String confPath = Config.getConfigDirectory().toString(); | 214 String confPath = Config.getConfigDirectory().toString(); |
209 | 215 |
210 | 216 |
211 Map parameters = new HashMap(); | 217 Map<String, Object> parameters = new HashMap<String, Object>(); |
212 parameters.put("ReportTitle", Resources.getMsg( | 218 parameters.put("ReportTitle", Resources.getMsg( |
213 context.getMeta(), PDF_TITLE, "Exported Data")); | 219 context.getMeta(), PDF_TITLE, "Exported Data")); |
214 try { | 220 try { |
215 JasperPrint print = JasperFillManager.fillReport( | 221 JasperPrint print = JasperFillManager.fillReport( |
216 confPath + jasperFile, | 222 confPath + jasperFile, |