internal List <ApuestaDTO> RetrieveApuesta() { MySqlConnection con = Connect(); MySqlCommand command = con.CreateCommand(); command.CommandText = "SELECT a.tipo_apuesta, a.cuota, a.dinero_apostado, b.email, c.id_mercado FROM apuestas a," + " usuarios b, mercados c WHERE b.id_usuario = a.usuarios_id_usuarios AND c.id_mercado=a.mercados_id_mercado"; try { con.Open(); MySqlDataReader res = command.ExecuteReader(); ApuestaDTO a = null; List <ApuestaDTO> apuestas = new List <ApuestaDTO>(); while (res.Read()) { Debug.WriteLine("Tipo de apuesta: " + res.GetInt32(0) + " Cuota: " + res.GetDouble(1) + " Dinero apostado: " + res.GetDouble(2) + " Email Usuario: " + res.GetString(3) + " Id Mercado: " + res.GetInt32(4)); a = new ApuestaDTO(res.GetInt32(0), res.GetDouble(1), res.GetDouble(2), res.GetString(3), res.GetInt32(4)); apuestas.Add(a); } con.Close(); return(apuestas); } catch (MySqlException e) { Debug.WriteLine("Error de conexión"); return(null); } }
internal List <ApuestaDTO> RetrieveDatos(int id_mercado_fk) { MySqlConnection con = Connect(); MySqlCommand command = con.CreateCommand(); command.CommandText = "select email_fk ,tipo_apuesta, cuota, dinero_apostado from apuesta where id_mercado_fk = @A"; command.Parameters.AddWithValue("@A", id_mercado_fk); Debug.WriteLine("El comando es:" + command.CommandText); try { con.Open(); MySqlDataReader res = command.ExecuteReader(); ApuestaDTO m = null; List <ApuestaDTO> apuesta = new List <ApuestaDTO>(); while (res.Read()) { Debug.WriteLine("Recuperado: " + res.GetString(0) + " " + res.GetDouble(1) + " " + res.GetDouble(2) + " " + res.GetInt32(3)); m = new ApuestaDTO(res.GetString(0), res.GetDouble(1), res.GetDouble(2), res.GetInt32(3)); apuesta.Add(m); } con.Close(); return(apuesta); } catch (MySqlException e) { Debug.WriteLine("Se ha producido un error de conexion"); return(null); } }
internal void insertarApuesta(ApuestaDTO aps) { CultureInfo culInfo = new System.Globalization.CultureInfo("es-ES"); culInfo.NumberFormat.NumberDecimalSeparator = "."; culInfo.NumberFormat.CurrencyDecimalSeparator = "."; culInfo.NumberFormat.PercentDecimalSeparator = "."; culInfo.NumberFormat.CurrencyDecimalSeparator = "."; System.Threading.Thread.CurrentThread.CurrentCulture = culInfo; Debug.WriteLine("apuesta vale " + aps); MySqlConnection con = Connect(); MySqlCommand command = con.CreateCommand(); command.CommandText = "insert into apuestas(tipo_apuesta,cuota,dinero_apostado,mercados_id_mercado,usuarios_id_usuarios) values ('" + aps.Tipo_apuesta + "','" + aps.Cuota + "','" + aps.Dinero_apostado + "'" + ",'" + aps.Id_mercado + "','" + aps.Email + "')"; Debug.WriteLine("comando " + command.CommandText); try { con.Open(); command.ExecuteNonQuery(); con.Close(); } catch (MySqlException e) { Debug.WriteLine("Se ha producido un error de conexión"); con.Close(); } con.Open(); command.CommandText = "select dinero_over from mercados where id_mercado=" + aps.Id_mercado + "; "; Debug.WriteLine("COMMAND " + command.CommandText); MySqlDataReader reader = command.ExecuteReader(); reader.Read(); double dineroOver = reader.GetDouble(0); reader.Close(); con.Close(); con.Open(); command.CommandText = "select dinero_under from mercados where id_mercado=" + aps.Id_mercado + "; "; reader = command.ExecuteReader(); reader.Read(); double dineroUnder = reader.GetDouble(0); reader.Close(); con.Close(); if (aps.Tipo_apuesta == 1) { dineroOver = dineroOver + aps.Dinero_apostado; } else { dineroUnder = dineroUnder + aps.Dinero_apostado; } Debug.WriteLine(dineroOver); Debug.WriteLine(dineroUnder); double po = dineroOver / (dineroOver + dineroUnder); double pu = dineroUnder / (dineroUnder + dineroOver); Debug.WriteLine(po); Debug.WriteLine(pu); double co = Convert.ToDouble((1 / po) * 0.95); double cu = Convert.ToDouble((1 / pu) * 0.95); if (aps.Tipo_apuesta == 1) { command.CommandText = "update mercados set cuota_over = '" + co + "',cuota_under = '" + cu + "', dinero_over = '" + dineroOver + "' where id_mercado =" + aps.Id_mercado + ";"; try { con.Open(); command.ExecuteNonQuery(); } catch (MySqlException e) { Console.WriteLine("Error " + e); } con.Close(); } else { command.CommandText = "update mercados set cuota_under = '" + cu + "', cuota_over = '" + co + "', dinero_under = '" + dineroUnder + "' where id_mercado =" + aps.Id_mercado + "; "; try { con.Open(); command.ExecuteNonQuery(); } catch (MySqlException e) { Console.WriteLine("Error " + e); } con.Close(); } }