From 00af1dcf0807e7fc4200e0c43f727e781ef69ff0 Mon Sep 17 00:00:00 2001 From: Stefan Schmiedl Date: Wed, 3 Jul 2019 14:03:23 +0200 Subject: [PATCH] deprecate misleading documentCode in favour of categoryCode --- .../org/mustangproject/ZUGFeRD/VATAmount.java | 32 +++++++++++++++---- .../ZUGFeRDTransactionModelConverter.java | 12 ++++--- 2 files changed, 33 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/mustangproject/ZUGFeRD/VATAmount.java b/src/main/java/org/mustangproject/ZUGFeRD/VATAmount.java index 408ea69f..817595f6 100644 --- a/src/main/java/org/mustangproject/ZUGFeRD/VATAmount.java +++ b/src/main/java/org/mustangproject/ZUGFeRD/VATAmount.java @@ -31,16 +31,16 @@ import java.math.BigDecimal; */ public class VATAmount { - public VATAmount(BigDecimal basis, BigDecimal calculated, String documentCode) { + public VATAmount(BigDecimal basis, BigDecimal calculated, String categoryCode) { super(); this.basis = basis; this.calculated = calculated; - this.documentCode = documentCode; + this.categoryCode = categoryCode; } BigDecimal basis, calculated; - String documentCode; + String categoryCode; public BigDecimal getBasis() { return basis; @@ -58,20 +58,38 @@ public class VATAmount { this.calculated = calculated; } + /** + * + * @deprecated Use {@link #getCategoryCode() instead} + */ + @Deprecated public String getDocumentCode() { - return documentCode; + return categoryCode; } + /** + * + * @deprecated Use {@link #setCategoryCode(String)} instead + */ + @Deprecated public void setDocumentCode(String documentCode) { - this.documentCode = documentCode; + this.categoryCode = documentCode; + } + + public String getCategoryCode() { + return categoryCode; + } + + public void setCategoryCode(String categoryCode) { + this.categoryCode = categoryCode; } public VATAmount add(VATAmount v) { - return new VATAmount(basis.add(v.getBasis()), calculated.add(v.getCalculated()), this.documentCode); + return new VATAmount(basis.add(v.getBasis()), calculated.add(v.getCalculated()), this.categoryCode); } public VATAmount subtract(VATAmount v) { - return new VATAmount(basis.subtract(v.getBasis()), calculated.subtract(v.getCalculated()), this.documentCode); + return new VATAmount(basis.subtract(v.getBasis()), calculated.subtract(v.getCalculated()), this.categoryCode); } } diff --git a/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDTransactionModelConverter.java b/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDTransactionModelConverter.java index cf01b3c1..206b5a2e 100644 --- a/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDTransactionModelConverter.java +++ b/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDTransactionModelConverter.java @@ -422,7 +422,7 @@ class ZUGFeRDTransactionModelConverter { TaxCategoryCodeType taxCategoryCode = xmlFactory.createTaxCategoryCodeType(); VATAmount vatAmount = VATPercentAmountMap.get(currentTaxPercent); - taxCategoryCode.setValue(vatAmount.getDocumentCode()); + taxCategoryCode.setValue(vatAmount.getCategoryCode()); tradeTax.setCategoryCode(taxCategoryCode); VATAmount amount = VATPercentAmountMap.get(currentTaxPercent); @@ -924,7 +924,7 @@ class ZUGFeRDTransactionModelConverter { for (IZUGFeRDExportableItem currentItem : trans.getZFItems()) { BigDecimal percent = currentItem.getProduct().getVATPercent(); LineCalc lc = new LineCalc(currentItem); - VATAmount itemVATAmount = new VATAmount(lc.getItemTotalNetAmount(), lc.getItemTotalVATAmount(), trans.getDocumentCode()); + VATAmount itemVATAmount = new VATAmount(lc.getItemTotalNetAmount(), lc.getItemTotalVATAmount(), lc.getCategoryCode()); VATAmount current = hm.get(percent); if (current == null) { hm.put(percent, itemVATAmount); @@ -958,7 +958,7 @@ class ZUGFeRDTransactionModelConverter { VATAmount itemVATAmount = new VATAmount( logisticsServiceCharge.getTotalAmount(), logisticsServiceCharge.getTotalAmount() - .multiply(percent).divide(new BigDecimal(100)), trans.getDocumentCode()); + .multiply(percent).divide(new BigDecimal(100)), logisticsServiceCharge.getCategoryCode()); VATAmount current = hm.get(percent); if (current == null) { hm.put(percent, itemVATAmount); @@ -973,7 +973,7 @@ class ZUGFeRDTransactionModelConverter { BigDecimal percent = charge.getTaxPercent(); VATAmount itemVATAmount = new VATAmount( charge.getTotalAmount(), charge.getTotalAmount() - .multiply(percent).divide(new BigDecimal(100)), trans.getDocumentCode()); + .multiply(percent).divide(new BigDecimal(100)), charge.getCategoryCode()); VATAmount current = hm.get(percent); if (current == null) { hm.put(percent, itemVATAmount); @@ -998,6 +998,7 @@ class ZUGFeRDTransactionModelConverter { private BigDecimal itemTotalNetAmount; private BigDecimal itemTotalVATAmount; private BigDecimal itemNetAmount; + private String categoryCode; public LineCalc(IZUGFeRDExportableItem currentItem) { @@ -1040,6 +1041,7 @@ class ZUGFeRDTransactionModelConverter { .add(totalCharge) .divide(currentItem.getQuantity(), 4, BigDecimal.ROUND_HALF_UP); + categoryCode = currentItem.getCategoryCode(); } @@ -1057,6 +1059,8 @@ class ZUGFeRDTransactionModelConverter { return itemNetAmount; } + public String getCategoryCode() { return categoryCode; } + } private class Totals {