in service/src/main/java/org/apache/fineract/cn/individuallending/internal/service/costcomponent/RealRunningBalances.java [74:102]
public BigDecimal getAccountSign(final String accountDesignator) {
return accountCache.get(accountDesignator)
.map(Account::getType)
.map(AccountType::valueOf)
.flatMap(x -> {
switch (x)
{
case LIABILITY:
case REVENUE:
case EQUITY:
return Optional.of(POSITIVE);
default:
case ASSET:
case EXPENSE:
return Optional.of(NEGATIVE);
}
})
.orElseGet(() -> {
switch (accountDesignator) {
case AccountDesignators.EXPENSE:
return NEGATIVE;
case AccountDesignators.ENTRY:
return POSITIVE;
default:
return NEGATIVE;
}}
);
}