http://jira.mfd.msk:8088/browse/CLS-888 округление в нотификации о разнице на шаге 5

This commit is contained in:
ialbert 2025-07-22 11:26:03 +03:00
parent 6eef004c50
commit dc8a07b143

View file

@ -1,6 +1,7 @@
package ru.spcex.clearing.util;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Map;
import java.util.function.Function;
import ru.clearing.classes.statics.data.execution.ExecutionCommon;
@ -32,7 +33,8 @@ public class ClearingUtil {
if (asset == null) return biErr(obligation);
BigDecimal difference = safeBD(obligation.getBalance())
.subtract(asset.getBalance())
.abs();
.abs()
.setScale(2, RoundingMode.HALF_UP);
return "Недостаточно средств по инструменту "
+ obligation.getSecuritySymbol()
+ ", разница: " + difference;
@ -43,7 +45,9 @@ public class ClearingUtil {
+ obligation.getSecuritySymbol()
+ ", разница: " + bd;
BigDecimal obligationBalance = safeBD(obligation.getBalance());
Function<Registry, BigDecimal> diff = r -> obligationBalance.subtract(r.getBalance()).abs();
Function<Registry, BigDecimal> diff = r -> obligationBalance.subtract(r.getBalance())
.abs()
.setScale(2, RoundingMode.HALF_UP);
BigDecimal assetBalance1 = safeBD(asset1.getBalance());
if (assetBalance1.compareTo(obligationBalance) < 0) {
return printErr.apply(diff.apply(asset1));