public async Task <DetailsRoundHistoryView> GetRoundsDetailsByRoundId(int roundId) { Round round = await _roundRepository.Get(roundId); Game game = await _gameRepository.Get(round.GameId); Player player = await _playerRepository.Get(game.PlayerId); Player dealer = await _playerRepository.GetFirstPlayerByRole(PlayerRole.Dealer); List <Player> bots = await _playerRepository.GetQuantityByRole(game.PlayersAmount - 1, (int)PlayerRole.Bot); var players = new List <Player>(); players.Add(player); players.Add(dealer); players.AddRange(bots); List <PlayerRoundHand> hands = await _playerRoundHandRepository.GetPLayerRoundHandListByRoundId(round.Id); var playerRoundHandId = new List <long>(); foreach (var hand in hands) { playerRoundHandId.Add(hand.Id); } List <Card> cards = await _cardRepository.GetPlayerRoundHandCards(playerRoundHandId); var data = new DetailsRoundHistoryView(); data.Players = _maping.MapPlayersToPlayerDetailsRoundHistoryViewItem(players, hands, cards); return(data); }
public async Task <DetailsRoundHistoryView> GetRoundsDetailsByRoundId(int roundId) { try { DetailsRoundHistoryView model = await _historyService.GetRoundsDetailsByRoundId(roundId); return(model); } catch (Exception ex) { logger.Error(ex.ToString()); throw; } }