private void replaceSumDataInTable(final XWPFTable posTbl, final RechnungDO invoice) { Map<String, String> map = new HashMap<>(); map.put("Zwischensumme", formatBigDecimal(invoice.getNetSum())); map.put("MwSt", formatBigDecimal(invoice.getVatAmountSum())); map.put("Gesamtbetrag", formatBigDecimal(invoice.getGrossSum())); int tableRowSize = posTbl.getRows().size(); for (int startSumRow = tableRowSize - 2; startSumRow < tableRowSize; startSumRow++) { for (XWPFTableCell cell : posTbl.getRow(startSumRow).getTableCells()) { for (XWPFParagraph cellParagraph : cell.getParagraphs()) { replaceInParagraph(cellParagraph, map); } } } }
private void replacePosDataInTable(final XWPFTable posTbl, final RechnungDO invoice) { int rowCount = 1; for (RechnungsPositionDO position : invoice.getPositionen()) { String identifier = "{" + position.getNumber() + "}"; Map<String, String> map = new HashMap<>(); map.put(identifier + "Posnummer", String.valueOf(position.getNumber())); map.put(identifier + "Text", position.getText()); map.put(identifier + "Leistungszeitraum", getPeriodOfPerformance(position, invoice)); map.put(identifier + "Menge", formatBigDecimal(position.getMenge())); map.put(identifier + "Einzelpreis", formatBigDecimal(position.getEinzelNetto())); map.put(identifier + "Betrag", formatBigDecimal(position.getNetSum())); for (XWPFTableCell cell : posTbl.getRow(rowCount).getTableCells()) { for (XWPFParagraph cellParagraph : cell.getParagraphs()) { replaceInParagraph(cellParagraph, map); } } rowCount++; } }
replacementMap.put("Anlage", getReplacementForAttachment(data)); if (isSkonto) { replacementMap.put("Skonto", formatBigDecimal(data.getDiscountPercent()) + " %"); replacementMap.put("Faelligkeit_Skonto", DateTimeFormatter.instance().getFormattedDate(data.getDiscountMaturity()));