diff --git a/backend/requests/blackjack.http b/backend/requests/blackjack.http index fcff731..ea20985 100644 --- a/backend/requests/blackjack.http +++ b/backend/requests/blackjack.http @@ -5,8 +5,3 @@ Content-Type: application/json { "betAmount": 1.01 } - -### -POST http://localhost:8080/blackjack/103/hit -Authorization: Bearer {{token}} - diff --git a/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameController.java b/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameController.java index 1319c10..0aab2cb 100644 --- a/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameController.java +++ b/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameController.java @@ -6,12 +6,14 @@ import de.szut.casino.user.UserService; import jakarta.validation.Valid; import lombok.extern.slf4j.Slf4j; import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RestController; import java.math.BigDecimal; import java.util.HashMap; import java.util.Map; -import java.util.Objects; import java.util.Optional; @Slf4j @@ -26,23 +28,6 @@ public class BlackJackGameController { this.userService = userService; } - @PostMapping("/blackjack/{id}/hit") - public ResponseEntity hit(@PathVariable Long id, @RequestHeader("Authorization") String token) { - Optional optionalUser = userService.getCurrentUser(token); - - if (optionalUser.isEmpty()) { - return ResponseEntity.notFound().build(); - } - - UserEntity user = optionalUser.get(); - BlackJackGameEntity game = blackJackService.getBlackJackGame(id); - if (game == null || !Objects.equals(game.getUserId(), user.getId())) { - return ResponseEntity.notFound().build(); - } - - return ResponseEntity.ok(blackJackService.hit(game)); - } - @PostMapping("/blackjack/start") public ResponseEntity createBlackJackGame(@RequestBody @Valid CreateBlackJackGameDto createBlackJackGameDto, @RequestHeader("Authorization") String token) { Optional optionalUser = userService.getCurrentUser(token); diff --git a/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameEntity.java b/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameEntity.java index eb5a704..0193991 100644 --- a/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameEntity.java +++ b/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameEntity.java @@ -8,7 +8,6 @@ import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import org.hibernate.annotations.SQLRestriction; import java.math.BigDecimal; import java.util.ArrayList; @@ -40,16 +39,13 @@ public class BlackJackGameEntity { @OneToMany(mappedBy = "game", cascade = CascadeType.ALL, orphanRemoval = true) @JsonIgnore - @SQLRestriction("card_type = 'DECK'") private List deck = new ArrayList<>(); @OneToMany(mappedBy = "game", cascade = CascadeType.ALL, orphanRemoval = true) @JsonManagedReference - @SQLRestriction("card_type = 'PLAYER'") private List playerCards = new ArrayList<>(); @OneToMany(mappedBy = "game", cascade = CascadeType.ALL, orphanRemoval = true) @JsonManagedReference - @SQLRestriction("card_type = 'DEALER'") private List dealerCards = new ArrayList<>(); } diff --git a/backend/src/main/java/de/szut/casino/blackjack/BlackJackService.java b/backend/src/main/java/de/szut/casino/blackjack/BlackJackService.java index 05cf93c..86a159c 100644 --- a/backend/src/main/java/de/szut/casino/blackjack/BlackJackService.java +++ b/backend/src/main/java/de/szut/casino/blackjack/BlackJackService.java @@ -6,7 +6,6 @@ import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.List; -import java.util.Optional; import java.util.Random; @Service @@ -21,11 +20,6 @@ public class BlackJackService { private final Random random = new Random(); - public BlackJackGameEntity getBlackJackGame(Long id) { - Optional optionalBlackJackGame = blackJackGameRepository.findById(id); - return optionalBlackJackGame.orElse(null); - } - public BlackJackGameEntity createBlackJackGame(UserEntity user, BigDecimal betAmount) { BlackJackGameEntity game = new BlackJackGameEntity(); game.setUser(user); @@ -34,12 +28,10 @@ public class BlackJackService { for (int i = 0; i < 2; i++) { CardEntity playerCard = drawCardFromDeck(game); - playerCard.setCardType(CardType.PLAYER); game.getPlayerCards().add(playerCard); } CardEntity dealerCard = drawCardFromDeck(game); - dealerCard.setCardType(CardType.DEALER); game.getDealerCards().add(dealerCard); game.setState(getState(game)); @@ -51,16 +43,6 @@ public class BlackJackService { return game; } - public BlackJackGameEntity hit(BlackJackGameEntity game) { - CardEntity drawnCard = drawCardFromDeck(game); - drawnCard.setCardType(CardType.PLAYER); - game.getPlayerCards().add(drawnCard); - - game.setState(getState(game)); - - return blackJackGameRepository.save(game); - } - private void initializeDeck(BlackJackGameEntity game) { for (Suit suit : Suit.values()) { for (Rank rank : Rank.values()) { @@ -68,7 +50,6 @@ public class BlackJackService { card.setGame(game); card.setSuit(suit); card.setRank(rank); - card.setCardType(CardType.DECK); game.getDeck().add(card); } } diff --git a/backend/src/main/java/de/szut/casino/blackjack/CardEntity.java b/backend/src/main/java/de/szut/casino/blackjack/CardEntity.java index 5520b58..8026d72 100644 --- a/backend/src/main/java/de/szut/casino/blackjack/CardEntity.java +++ b/backend/src/main/java/de/szut/casino/blackjack/CardEntity.java @@ -1,5 +1,6 @@ package de.szut.casino.blackjack; + import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonIgnore; import jakarta.persistence.*; @@ -29,11 +30,4 @@ public class CardEntity { @Enumerated(EnumType.STRING) private Rank rank; - - @Enumerated(EnumType.STRING) - private CardType cardType; -} - -enum CardType { - DECK, PLAYER, DEALER }