public async Task <ClsReponseGeneric> AddBet(ClsBet clsBet) { SqlConnection sql = new SqlConnection(_connectionString); ClsReponseGeneric clsResponseGeneric = new ClsReponseGeneric(); DataTable datos = new DataTable(); var sqlDataAdapter = new SqlDataAdapter("dbo.USP_NewBet", _connectionString); SqlParameter[] parametro = { new SqlParameter { ParameterName = "@InIdRoulette", Value = clsBet.InIdRoulette }, new SqlParameter { ParameterName = "@InBetPosition", Value = clsBet.InBetPosition }, new SqlParameter { ParameterName = "@ChBetColor", Value = clsBet.StrBetColor }, new SqlParameter { ParameterName = "@DcBetValue", Value = clsBet.DcBetValue }, new SqlParameter { ParameterName = "@InCodPlayer", Value = clsBet.InCodPlayer } }; try { sqlDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure; sqlDataAdapter.SelectCommand.CommandTimeout = 0; sqlDataAdapter.SelectCommand.Parameters.AddRange(parametro); sqlDataAdapter.SelectCommand.Connection.Open(); await Task.Run(() => sqlDataAdapter.Fill(datos)); if (datos.Rows.Count > 0) { clsResponseGeneric.message = datos.Rows[0].ItemArray[0].ToString(); } else { clsResponseGeneric.message = "registered bet"; } } catch (Exception Ex) { throw new Exception(Ex.Message); } finally { sqlDataAdapter.SelectCommand.Connection.Close(); sqlDataAdapter.SelectCommand.Dispose(); } return(clsResponseGeneric); }
public async Task <ClsReponseGeneric> ValidateBet(ClsBet clsBet) { ClsReponseGeneric clsReponseGeneric = new ClsReponseGeneric(); List <ClsRoulettePosition> positionsList = await GetRoulettePositions(); ClsPlayer clsPlayer = await _playerRepository.FindPlayerByCod(clsBet.InCodPlayer); if (clsPlayer.InCodUser != 0) { if (clsBet.DcBetValue <= 10000) { if (clsPlayer.DcCredit >= clsBet.DcBetValue) { if (String.IsNullOrEmpty(clsBet.StrBetColor)) { if (Enumerable.Range(0, 36).Contains(clsBet.InBetPosition)) { clsReponseGeneric = await AddBet(clsBet); } else { clsReponseGeneric.message = "invalid position"; } } else { clsBet.InBetPosition = -1; if (clsBet.StrBetColor.Contains("N") || clsBet.StrBetColor.Contains("R")) { clsReponseGeneric = await AddBet(clsBet); } else { clsReponseGeneric.message = "invalid color position (N/R)"; } } } else { clsReponseGeneric.message = "insufficient credit"; } } else { clsReponseGeneric.message = "The maximum value to bet is 10000,00"; } } else { clsReponseGeneric.message = "invalid player"; } return(clsReponseGeneric); }
public async Task <ClsReponseGeneric> UpdatePlayerCredit(int InCodPlayer, decimal DcCredit) { SqlConnection sql = new SqlConnection(_connectionString); ClsReponseGeneric clsResponseGeneric = new ClsReponseGeneric(); DataTable datos = new DataTable(); var sqlDataAdapter = new SqlDataAdapter("ARR.USP_UpdatePlayerCredit", _connectionString); SqlParameter[] parametro = { new SqlParameter { ParameterName = "@InCodPlayer", Value = InCodPlayer }, new SqlParameter { ParameterName = "@DcCredit", Value = DcCredit }, }; try { sqlDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure; sqlDataAdapter.SelectCommand.CommandTimeout = 0; sqlDataAdapter.SelectCommand.Parameters.AddRange(parametro); sqlDataAdapter.SelectCommand.Connection.Open(); await Task.Run(() => sqlDataAdapter.Fill(datos)); if (datos.Rows.Count > 0) { clsResponseGeneric.message = datos.Rows[0].ItemArray[0].ToString(); } else { clsResponseGeneric.message = "Updated Data"; } } catch (Exception Ex) { throw new Exception(Ex.Message); } finally { sqlDataAdapter.SelectCommand.Connection.Close(); sqlDataAdapter.SelectCommand.Dispose(); } return(clsResponseGeneric); }
public async Task <ClsReponseGeneric> OpenRoulette(int InIdRoulette) { SqlConnection sql = new SqlConnection(_connectionString); ClsReponseGeneric clsResponseGeneric = new ClsReponseGeneric(); DataTable datos = new DataTable(); var sqlDataAdapter = new SqlDataAdapter("dbo.USP_OpeningRoulette", _connectionString); SqlParameter[] parametro = { new SqlParameter { ParameterName = "@InIdRoulette", Value = InIdRoulette } }; try { sqlDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure; sqlDataAdapter.SelectCommand.CommandTimeout = 0; sqlDataAdapter.SelectCommand.Parameters.AddRange(parametro); sqlDataAdapter.SelectCommand.Connection.Open(); await Task.Run(() => sqlDataAdapter.Fill(datos)); if (datos.Rows.Count > 0) { clsResponseGeneric.message = datos.Rows[0].ItemArray[0].ToString(); } else { clsResponseGeneric.message = "Open Roulette"; } } catch (Exception Ex) { throw new Exception(Ex.Message); } finally { sqlDataAdapter.SelectCommand.Connection.Close(); sqlDataAdapter.SelectCommand.Dispose(); } return(clsResponseGeneric); }