Exemplo n.º 1
0
        private void btnInsertar_Click(object sender, EventArgs e)
        {
            if (txtInformacionNutritiva.Text.Length == 0)
            {
                txtInformacionNutritiva.Text = " ";
            }

            if (ConexionBD.AbrirConexion())
            {
                if (comprobarVacios())
                {
                    DialogResult respuesta = MessageBox.Show("¿Insertar producto?", "Insertar", MessageBoxButtons.YesNo);
                    if (respuesta == DialogResult.Yes)
                    {
                        bool          ok    = false;
                        Administrador admin = new Administrador();
                        Productos     prod  = new Productos();
                        List <int>    lista = new List <int>();
                        int           res;

                        prod.Nombre = txtNombre.Text;
                        try
                        {
                            prod.Precio = Convert.ToDouble(txtPrecio.Text);
                            ok          = true;
                        }
                        catch (Exception)
                        {
                        }

                        prod.Categoria   = cmbCategoria.Text;
                        prod.Descripcion = txtDescripcion.Text;
                        prod.Info        = txtInformacionNutritiva.Text;
                        prod.Foto        = pctFoto.Image;

                        if (ok)
                        {
                            if (!NombreRepetido(prod.Nombre))
                            {
                                MySqlCommand    commando = new MySqlCommand("SELECT Codigo FROM producto ORDER BY Codigo;", ConexionBD.Conexion);
                                MySqlDataReader reader   = commando.ExecuteReader();

                                if (reader.HasRows)
                                {
                                    while (reader.Read())
                                    {
                                        lista.Add(reader.GetInt32(0));
                                    }
                                }
                                reader.Close();
                                prod.Codigo = lista[lista.Count - 1] + 1;

                                res = admin.AgregarProducto(ConexionBD.Conexion, prod);
                                if (res > 0)
                                {
                                    MessageBox.Show("Producto insertado");
                                }
                                else
                                {
                                    MessageBox.Show("No se ha podido insertar el producto");
                                }
                                txtNombre.Clear();
                                cmbCategoria.Text = "";
                                txtDescripcion.Clear();
                                txtInformacionNutritiva.Clear();
                                txtPrecio.Clear();
                                pctFoto.Image = pcbLogo.Image;
                            }
                            else
                            {
                                MessageBox.Show("Ya hay un producto en la base de datos con este nombre, introduce otro");
                            }
                        }
                        else
                        {
                            MessageBox.Show("Precio no válido");
                        }
                    }
                }
                ConexionBD.CerrarConexion();
            }
            else
            {
                MessageBox.Show("No se ha podido abrir la conexión con la base de datos");
            }
        }
Exemplo n.º 2
0
        //Metodo para final la compra
        private void btnFinalizarPedido_Click(object sender, EventArgs e)
        {
            //Cargo el datagrid con todos los productos por si el cliente ha realizado alguna busqueda
            ConexionBD.AbrirConexion();
            dtgCarrito.DataSource = CarritoTemporal.FiltrarCarrito(ConexionBD.Conexion, "");
            ConexionBD.CerrarConexion();

            string   metodoPago = "";
            DateTime fecha      = DateTime.Now;
            string   dni        = Sesion.NifUsu;

            if (rdbVisa.Checked)
            {
                metodoPago = "Visa";
            }
            else if (rdbTarjeta.Checked)
            {
                metodoPago = "Tarjeta";
            }
            else if (rdbMastercard.Checked)
            {
                metodoPago = "Mastercard";
            }
            else if (rdbPaypal.Checked)
            {
                metodoPago = "PayPal";
            }

            ConexionBD.AbrirConexion();

            if (CarritoTemporal.ComprobarCarrito(ConexionBD.Conexion))
            {
                ConexionBD.CerrarConexion();
                if (MessageBox.Show("¿Seguro que desea realizar la compra? No podrá modificarla después.", "Comprar", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                {
                    //Añado los productos del carrito a la tabla compra
                    for (int i = 0; i < dtgCarrito.Rows.Count; i++)
                    {
                        int    codigoProducto;
                        string nombreProducto   = dtgCarrito.Rows[i].Cells[0].Value.ToString();
                        int    cantidadProducto = int.Parse(dtgCarrito.Rows[i].Cells[1].Value.ToString());

                        ConexionBD.AbrirConexion();
                        codigoProducto = Productos.CodigoProducto(ConexionBD.Conexion, nombreProducto);
                        ConexionBD.CerrarConexion();

                        ConexionBD.AbrirConexion();
                        string          consultaInsert = String.Format("INSERT INTO compra (Fecha, DniCliente, CodProducto, Cantidad, Metodo) VALUES ('{0}','{1}','{2}','{3}','{4}');", fecha.ToString("yyyy-MM-dd HH:mm:ss"), dni, codigoProducto, cantidadProducto, metodoPago);
                        MySqlCommand    comando        = new MySqlCommand(consultaInsert, ConexionBD.Conexion);
                        MySqlDataReader reader         = comando.ExecuteReader();
                        ConexionBD.CerrarConexion();
                    }

                    //Muestro mensaje indicando que la compra se ha realizado correctamente
                    MessageBox.Show("Compra realizada correctamente. Le enviaremos su pedido lo antes posible.");

                    //Pregunto al cliente si quiere vaciar el carrito
                    if (MessageBox.Show("¿Quieres vaciar el carrito?", "Vaciar", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                    {
                        ConexionBD.AbrirConexion();
                        CarritoTemporal.VaciarCarrito(ConexionBD.Conexion, Sesion.NifUsu);
                        ConexionBD.CerrarConexion();
                    }
                    CargarCarrito();
                    ImporteTotal();
                }
            }
            else
            {
                MessageBox.Show("No tienes ningun producto en tu carrito.");
                ConexionBD.CerrarConexion();
            }
        }