feat(blackjack): add hit endpoint for blackjack game (CAS-51) #97

Merged
jank merged 5 commits from add-hitting into main 2025-03-27 12:52:42 +00:00
2 changed files with 15 additions and 1 deletions
Showing only changes of commit bd5539bb42 - Show all commits

View file

@ -39,7 +39,10 @@ public class BlackJackGameController {
return ResponseEntity.notFound().build();
}
// TODO validate that hit is a valid action
blackJackService.hit(game);
return ResponseEntity.ok().build();
}
@PostMapping("/blackjack/start")

View file

@ -5,6 +5,7 @@ import de.szut.casino.user.UserRepository;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Optional;
import java.util.List;
import java.util.Random;
@ -49,6 +50,16 @@ public class BlackJackService {
return game;
}
public BlackJackGameEntity hit(BlackJackGameEntity game) {
CardEntity drawnCard = drawCardFromDeck(game);
ArrayList<CardEntity> playerCards = (ArrayList<CardEntity>) game.getPlayerCards();
playerCards.add(drawnCard);
game.setPlayerCards(playerCards);
blackJackGameRepository.save(game);
return game;
}
private void initializeDeck(BlackJackGameEntity game) {
for (Suit suit : Suit.values()) {
for (Rank rank : Rank.values()) {