diff --git a/src/main/java/au/com/royalpay/payment/manage/settlement/core/impls/ManualSettleSupportImpl.java b/src/main/java/au/com/royalpay/payment/manage/settlement/core/impls/ManualSettleSupportImpl.java index 1c7de9ef8..0971f1a31 100644 --- a/src/main/java/au/com/royalpay/payment/manage/settlement/core/impls/ManualSettleSupportImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/settlement/core/impls/ManualSettleSupportImpl.java @@ -82,13 +82,14 @@ public class ManualSettleSupportImpl implements ManualSettleSupport { List unsettleReports = transactionMapper.listClientUnsettleDataByDate(clientId); unsettleReports.parallelStream().forEach(report -> { report.put("clearing_amount", CurrencyAmountUtils.scalePlatformCurrency(report.getBigDecimal("clearing_amount"))); - report.put("settle_amount", CurrencyAmountUtils.scalePlatformCurrency(report.getBigDecimal("settle_amount"))); + BigDecimal settleAmount = report.getBigDecimal("settle_amount"); + report.put("settle_amount", CurrencyAmountUtils.scalePlatformCurrency(settleAmount == null ? BigDecimal.ZERO : settleAmount)); report.put("date_str", DateFormatUtils.format(report.getDate("trans_date"), "yyyy-MM-dd")); }); todayTask.put("unsettle", unsettleReports); BigDecimal totalClearing = unsettleReports.stream().map(report -> report.getBigDecimal("clearing_amount")).reduce(BigDecimal::add).orElse(BigDecimal.ZERO); todayTask.put("total_clearing_amount", CurrencyAmountUtils.scalePlatformCurrency(totalClearing)); - BigDecimal totalSettle = unsettleReports.stream().map(report -> report.getBigDecimal("settle_amount") == null ? BigDecimal.ZERO : report.getBigDecimal("settle_amount")).reduce(BigDecimal::add).orElse(BigDecimal.ZERO); + BigDecimal totalSettle = unsettleReports.stream().map(report -> report.getBigDecimal("settle_amount")).reduce(BigDecimal::add).orElse(BigDecimal.ZERO); todayTask.put("total_settle_amount", CurrencyAmountUtils.scalePlatformCurrency(totalSettle)); todayTask.put("desc", LocaleSupport.localeMessage("manual_settle.notice")); }