public async Task <ClosedBetResult> CloseBet(Guid rouletteId) { var result = new ClosedBetResult(); var roulette = await _rouletteRepository.GetRoulette(new Roulette { Id = rouletteId }); if (roulette == null) { result.Success = false; result.Message = "Roulette not found"; return(result); } if (!roulette.Open) { result.Success = false; result.Message = "Roulette not Open,Please First Open the Roulette"; return(result); } if (roulette.WinnerNumber != -1) { result.Success = false; result.Message = $"Roulette Already Played, the Winner is { roulette.WinnerNumber},With color {roulette.Color}"; return(result); } await RunRoulette(roulette); var bets = await _betRepository.GetAllBetsByRoulette(rouletteId); //Change Winners UpdateBets(bets, roulette); result.Data = bets; result.Success = true; return(result); }