refactor: subtract betamount on blank status #166

Merged
ptran merged 2 commits from slots-fix-blank-result into main 2025-05-07 12:50:20 +00:00
Showing only changes of commit 6e101a0cab - Show all commits

View file

@ -52,30 +52,21 @@ public class SlotService {
private SpinResult processResult(BigDecimal betAmount, UserEntity user, Status status, Symbol winSymbol) {
SpinResult spinResult = new SpinResult();
spinResult.setStatus(status.name().toLowerCase());
switch (status) {
case WIN:
BigDecimal winAmount = betAmount.multiply(winSymbol.getPayoutMultiplier());
this.balanceService.addFunds(user, winAmount);
spinResult.setAmount(winAmount);
spinResult.setStatus(Status.WIN.name().toLowerCase());
break;
case BLANK:
spinResult.setAmount(BigDecimal.ZERO);
spinResult.setStatus(Status.BLANK.name().toLowerCase());
break;
case LOSE:
this.balanceService.subtractFunds(user, betAmount);
spinResult.setAmount(betAmount);
spinResult.setStatus(Status.LOSE.name().toLowerCase());
break;
if (status == Status.WIN) {
BigDecimal winAmount = betAmount.multiply(winSymbol.getPayoutMultiplier());
this.balanceService.addFunds(user, winAmount);
spinResult.setAmount(winAmount);
} else {
this.balanceService.subtractFunds(user, betAmount);
spinResult.setAmount(betAmount);
}
return spinResult;
}
private void buildResultMatrix(SpinResult spinResult, int index1, int index2, int index3) {
List<List<Symbol>> resultMatrix = new ArrayList<>(3);