balance-service http://jira.mfd.msk:8088/browse/CLS-74 правильное обновление AccountBalanceService

This commit is contained in:
AKurakin 2023-01-16 18:08:11 +03:00
parent b1cd2b7a0f
commit 4c687e8d59

View file

@ -66,14 +66,23 @@ public class AccountBalanceService {
return new AccountResult(accountBalance);
} else {
accountBalance.setUpdated(Instant.now());
accountBalance.setAccountId(accountId);
accountBalance.setAccountType(account.getAccountType());
accountBalance.setAccountId(accountId);//+
accountBalance.setAccountType(account.getAccountType());//++
accountBalance.setAccount(account.getAccount());
accountBalance.setOpenBalanceAmount(amount);
accountBalance.setFreeBalanceAmount(amount);
accountBalance.setBalanceAmount(amount);
// accountBalance.setOpenBalanceAmount();// на базе изменения statement по sDf16/sDf09): не меняется.
accountBalance.setFreeBalanceAmount(plus(accountBalance.getFreeBalanceAmount(), amount));
accountBalance.setChangeBalanceAmount(plus(accountBalance.getChangeBalanceAmount(), amount));
accountBalance.setCreditAmount(plus(accountBalance.getCreditAmount(), amount));
accountBalance.setDebitAmount(plus(accountBalance.getDebitAmount(), amount));
accountBalance.setBalanceAmount(plus(accountBalance.getBalanceAmount(), amount));
accountBalance.setCurrencyCode(cashMovementCurrencyCode);
return new AccountResult(accountBalance);
}
}
BigDecimal plus(BigDecimal a, BigDecimal b) {
if (a == null) return b;
if (b == null) return a;
return a.add(b);
}
}