internal List <Apuestas> retrieve()
        {
            MySqlConnection conectar = Connect();
            MySqlCommand    comando  = conectar.CreateCommand();

            comando.CommandText = "Select * from Apuestas";
            try
            {
                conectar.Open();

                MySqlDataReader reader = comando.ExecuteReader();

                List <Apuestas> apuesta = new List <Apuestas>();
                while (reader.Read())
                {
                    Apuestas a = new Apuestas(reader.GetInt32(0), reader.GetString(1), reader.GetDouble(2), reader.GetDouble(3), reader.GetMySqlDateTime(4).ToString(), reader.GetInt32(5), reader.GetString(6));

                    apuesta.Add(a);
                }

                conectar.Close();
                return(apuesta);
            }
            catch (MySqlException e)
            {
                Debug.WriteLine("No ha podido realizarse la conexión con la base de datos.");
                return(null);
            }
        }
Exemplo n.º 2
0
        internal void Save(Apuestas apu)
        {
            MySqlConnection con     = Connect();
            MySqlCommand    command = con.CreateCommand();

            command.CommandText = "SELECT apu.overUnder, mer.cuotaOver, mer.cuotaUnder, mer.dineroOver, mer.dineroUnder, apu.tipo FROM apuestas apu INNER JOIN mercados mer WHERE apu.idApuesta = 1 AND mer.idMercado = apu.mercadoApu;";

            try
            {
                con.Open();
                MySqlDataReader res = command.ExecuteReader();

                double cuota = 0;
                int    tipo  = 0;

                while (res.Read())
                {
                    if (res.GetString(0) == "over")
                    {
                        cuota = res.GetFloat(3) / (res.GetFloat(3) + res.GetFloat(4));

                        cuota = (1 / cuota) * 0.95;
                    }
                    else
                    {
                        cuota = res.GetFloat(4) / (res.GetFloat(3) + res.GetFloat(4));

                        cuota = (1 / cuota) * 0.95;
                    }

                    tipo = res.GetInt32(5);
                }

                con.Close();

                DateTime myDateTime       = DateTime.Now;
                string   sqlFormattedDate = myDateTime.ToString("yyyy-MM-dd");

                command.CommandText = "insert into apuestas(mercadoApu, tipo, cuota, dinero, fecha, emailUsu, overUnder) values ('" + apu.mercadoApu + "','"
                                      + tipo + "','" + cuota + "','" + apu.dinero + "','" + sqlFormattedDate + "','" + apu.emailUsu + "','" + apu.overUnder + "');";

                try
                {
                    con.Open();
                    command.ExecuteNonQuery();
                    con.Close();
                }
                catch (MySqlException e) { Debug.WriteLine("Se ha producido un error de conexión"); }
            }
            catch (MySqlException e) { Debug.WriteLine("Se ha producido un error de conexión"); }
        }
        internal void Save(Apuestas a)
        {
            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;

            MySqlConnection conectar            = Connect();
            MySqlCommand    comando             = conectar.CreateCommand();
            MySqlCommand    comandocuotas       = conectar.CreateCommand();
            MySqlCommand    commandcambiarcuota = conectar.CreateCommand();
            MySqlCommand    cambiardinero       = conectar.CreateCommand();

            DateTime dt = DateTime.Now;
            string   s  = dt.ToString("yyyyMMddHHmmss");

            double over      = conseguirDineroOver(a.idMercado);
            double under     = conseguirDineroUnder(a.idMercado);
            double probunder = calcularProbUnder(over, under);
            double probover  = calcularProbOver(over, under);

            double cuota;

            if (a.tipoApuesta == "over")
            {
                Debug.WriteLine("Antes de la cuota " + a.idMercado);
                cuota = (double)conseguirCuotaOver(a.idMercado);
                Debug.WriteLine("Despues de cuota" + cuota);
                Debug.WriteLine("El dinero es " + a.dineroApuesta);

                double calcover  = calculoCuota(probover);
                double calcunder = calculoCuota(probunder);
                calcunder = Math.Round(calcunder, 2);
                calcover  = Math.Round(calcover, 2);

                comando.CommandText       = "INSERT INTO `apuestas` VALUES ('" + a.idMercado + "','" + a.tipoApuesta + "','" + cuota + "','" + a.dineroApuesta + "','" + s + "','" + a.idEvento + "','" + a.emailUsuario + "');'";
                cambiardinero.CommandText = "UPDATE mercados SET Dinero_Over=Dinero_Over+'" + a.dineroApuesta + "' WHERE IdMercado=" + a.idMercado + ";";
                comandocuotas.CommandText = "UPDATE `mercados` SET `Cuota_Over`=" + calcover + "WHERE IdMercado=" + a.idMercado + ";";
            }
            else
            {
                Debug.WriteLine("Antes de la cuota " + a.idMercado);
                cuota = (double)conseguirCuotaUnder(a.idMercado);
                Debug.WriteLine("Despues de cuota" + cuota);
                Debug.WriteLine("El dinero es " + a.dineroApuesta);

                double calculoover  = calculoCuota(probover);
                double calculounder = calculoCuota(probunder);
                calculounder = Math.Round(calculounder, 2);
                calculoover  = Math.Round(calculoover, 2);

                comando.CommandText       = "INSERT INTO `apuestas` VALUES ('" + a.idMercado + "','" + a.tipoApuesta + "','" + cuota + "','" + a.dineroApuesta + "','" + s + "','" + a.idEvento + "','" + a.emailUsuario + "');";
                cambiardinero.CommandText = "UPDATE `mercados` SET `Dinero_Under`=Dinero_Under + " + a.dineroApuesta + "WHERE IdMercado=" + a.idMercado + ";";
                comandocuotas.CommandText = "UPDATE `mercados` SET `Cuota_Under`=" + calculounder + "WHERE IdMercado=" + a.idMercado + ";";
            }

            Debug.WriteLine("Comando: " + comando.CommandText);

            try
            {
                conectar.Open();

                comando.ExecuteNonQuery();
                cambiardinero.ExecuteNonQuery();
                comandocuotas.ExecuteNonQuery();

                conectar.Close();
            }
            catch (MySqlException e)
            {
                Debug.WriteLine(e);
            }
        }