From ab3eaaf8c68433a9b5e4aeabb7b79b04df327b10 Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Sat, 1 Dec 2018 21:06:29 +0100 Subject: [PATCH] Fixed wrong format of amount strings --- .../budgetmaster/services/HelpersService.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/deadlocker8/budgetmaster/services/HelpersService.java b/src/main/java/de/deadlocker8/budgetmaster/services/HelpersService.java index 710b18822..359c72143 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/services/HelpersService.java +++ b/src/main/java/de/deadlocker8/budgetmaster/services/HelpersService.java @@ -19,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.io.UnsupportedEncodingException; +import java.math.RoundingMode; import java.net.URLEncoder; import java.text.NumberFormat; import java.util.ArrayList; @@ -59,20 +60,22 @@ public class HelpersService public String getCurrencyString(double amount) { - return getAmountString(amount) + " " + settingsRepository.findOne(0).getCurrency(); + return getAmountString(amount, true) + " " + settingsRepository.findOne(0).getCurrency(); } public String getAmountString(int amount) { - return getAmountString(Math.abs(amount) / 100.0); + return getAmountString(Math.abs(amount) / 100.0, false); } - public String getAmountString(double amount) + public String getAmountString(double amount, boolean useGrouping) { Settings settings = settingsRepository.findOne(0); NumberFormat format = NumberFormat.getNumberInstance(settings.getLanguage().getLocale()); format.setMaximumFractionDigits(2); format.setMinimumFractionDigits(2); + format.setRoundingMode(RoundingMode.HALF_UP); + format.setGroupingUsed(useGrouping); return String.valueOf(format.format(amount)); } -- GitLab