# HG changeset patch # User gernotbelger # Date 1533050266 -7200 # Node ID 9ea0e352269534afdb8d9140d62a87a54891b4d1 # Parent 0c8f170945d7960e0d73d77b0b24f60488159ee0# Parent 0ac8bbc63b38dba6c978edda69a265b010cfb300 Merge diff -r 0ac8bbc63b38 -r 9ea0e3522695 artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepth/FlowDepthCalculationResult.java --- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepth/FlowDepthCalculationResult.java Tue Jul 31 17:10:35 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepth/FlowDepthCalculationResult.java Tue Jul 31 17:17:46 2018 +0200 @@ -55,28 +55,28 @@ } @Override - public void writeCSVHeader(final ExportContextCSV exportContextCSV, final RiverInfo river) { + public void writeCSVHeader(final ExportContextCSV exportContext, final RiverInfo river) { // getLog().info("FlowDepthExporter.writeCSVHeader"); final Collection header = new ArrayList<>(11); - header.add(exportContextCSV.formatCsvHeader(GeneralResultType.station)); - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.flowdepth)); + header.add(exportContext.formatCsvHeader(GeneralResultType.station)); + header.add(exportContext.msgUnitCSV(SInfoResultType.flowdepth)); - if (this.hasTkh()) { - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.flowdepthtkh)); - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.tkh)); + if (((FlowDepthCalculationResults) exportContext.getResults()).hasTkh()) { + header.add(exportContext.msgUnitCSV(SInfoResultType.flowdepthtkh)); + header.add(exportContext.msgUnitCSV(SInfoResultType.tkh)); } - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.waterlevel, river.getWstUnit())); - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.discharge)); - header.add(exportContextCSV.formatCsvHeader(GeneralResultType.waterlevelLabel)); - header.add(exportContextCSV.formatCsvHeader(GeneralResultType.gaugeLabel)); - header.add(exportContextCSV.formatCsvHeader(SInfoResultType.meanBedHeight)); - header.add(exportContextCSV.formatCsvHeader(SInfoResultType.soundingLabel)); - header.add(exportContextCSV.formatCsvHeader(GeneralResultType.location)); + header.add(exportContext.msgUnitCSV(SInfoResultType.waterlevel, river.getWstUnit())); + header.add(exportContext.msgUnitCSV(SInfoResultType.discharge)); + header.add(exportContext.formatCsvHeader(GeneralResultType.waterlevelLabel)); + header.add(exportContext.formatCsvHeader(GeneralResultType.gaugeLabel)); + header.add(exportContext.formatCsvHeader(SInfoResultType.meanBedHeight)); + header.add(exportContext.formatCsvHeader(SInfoResultType.soundingLabel)); + header.add(exportContext.formatCsvHeader(GeneralResultType.location)); - exportContextCSV.writeCSVLine(header.toArray(new String[header.size()])); + exportContext.writeCSVLine(header.toArray(new String[header.size()])); } @@ -134,7 +134,9 @@ lines.add(exportContext.formatRowValue(row, SInfoResultType.flowdepth)); final FlowDepthCalculationResults results = exportContext.getResults(); - if (mode == ExportMode.pdf || results.isUseTkh()) { + // REMARK: for csv: only remove tkh columns, if no result has tkh + // for pdf: adding by default is necessary. If there is no tkh, columns will be removed later in the exporter. + if (mode == ExportMode.pdf || results.hasTkh()) { lines.add(exportContext.formatRowValue(row, SInfoResultType.flowdepthtkh)); lines.add(exportContext.formatRowValue(row, SInfoResultType.tkh)); } diff -r 0ac8bbc63b38 -r 9ea0e3522695 artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepth/FlowDepthCalculationResults.java --- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepth/FlowDepthCalculationResults.java Tue Jul 31 17:10:35 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepth/FlowDepthCalculationResults.java Tue Jul 31 17:17:46 2018 +0200 @@ -34,4 +34,12 @@ return this.useTkh; } + public boolean hasTkh() { + for (final FlowDepthCalculationResult result : getResults()) { + if (result.hasTkh()) + return true; + } + + return false; + } } \ No newline at end of file