private void btnBuscarFactura_Click(object sender, EventArgs e)
        {
            dataGridView1Pedido.Rows.Clear();

            List <Linped> _lista = new List <Linped>();


            DataTable dt = new DataTable();

            FormularioBusquedaPedido formPedido = new FormularioBusquedaPedido("informe");

            formPedido.ShowDialog();

            if (formPedido.DialogResult == DialogResult.OK)
            {
                errorTxtnumeroPedido.Text = formPedido.dgvPedidos.Rows[formPedido.dgvPedidos.CurrentRow.Index].Cells[0].Value.ToString();
                errorUsuarioID.Text       = formPedido.dgvPedidos.Rows[formPedido.dgvPedidos.CurrentRow.Index].Cells[1].Value.ToString();
                dateTimePicker1.Value     = Convert.ToDateTime(formPedido.dgvPedidos.Rows[formPedido.dgvPedidos.CurrentRow.Index].Cells[2].Value);

                _lista = FormularioBusquedaPedido.lista;



                List <Usuario> usuarios = new List <Usuario>();
                usuarios = _usuario.ObtenerUsuarios();
                var result = usuarios.Where(x => x.UsuarioID == Convert.ToInt32(formPedido.dgvPedidos.Rows[formPedido.dgvPedidos.CurrentRow.Index].Cells[1].Value.ToString())).ToList();

                errorTxtnombre.Text    = result[0].Nombre;
                errorTxtdireccion.Text = result[0].Calle;
                errorTxtlocalidad.Text = result[0].PuebloID;
                errorTxtDni.Text       = result[0].Dni;

                dt = Utilidades.ConvertToDataTable(_lista);

                dt.Columns.Add("ImporteTotal", typeof(string));

                foreach (DataRow data in dt.Rows)
                {
                    data["ImporteTotal"] = Convert.ToDouble(data["Importe"].ToString()) * Convert.ToDouble(data["Cantidad"].ToString());
                    dataGridView1Pedido.Rows.Add(data["Linea"].ToString(), data["ArticuloID"].ToString(),
                                                 data["Importe"].ToString(), data["Cantidad"].ToString(), data["ImporteTotal"].ToString());
                }

                decimal[] resumenFactura = new decimal[4];

                resumenFactura = _negPedido.Datosfactura(FormularioBusquedaPedido._pedidoeleguido[0], 21);

                textsubTotal.Text = resumenFactura[0].ToString() + " €";
                textIva.Text      = resumenFactura[1].ToString() + " €";
                textTotal.Text    = resumenFactura[2].ToString() + " €";
            }
        }
        private void ResumenFactura(Pedido pedido, decimal iva)
        {
            decimal[] resumenFactura = new decimal[4];

            resumenFactura = _negpedido.Datosfactura(pedido, iva);

            total       = resumenFactura[0];
            totalIva    = resumenFactura[1];
            totalConIva = resumenFactura[2];

            lbSubTotal.Content    = total.ToString() + " €";
            lbIva.Content         = totalIva.ToString() + " €";
            lbTotalConIva.Content = totalConIva.ToString() + " €";
        }
        private void ResumenFactura(Pedido pedido, decimal iva)
        {
            decimal[] resumenFactura = new decimal[4];

            resumenFactura = _negPedido.Datosfactura(pedido, iva);

            total       = resumenFactura[0];
            totalIva    = resumenFactura[1];
            totalConIva = resumenFactura[2];

            Subtotal.DataContext = total.ToString() + " €";
            IVA.DataContext      = totalIva.ToString() + " €";
            Total.DataContext    = totalConIva.ToString() + " €";
        }
        private void BtnColocar_Click(object sender, EventArgs e)
        {
            if (Utilidades.ValidarFormulario(this, errorProvider1) == false)
            {
                List <Articulo> list = _listArticulos.Where(x => x.Nombre.ToUpper() == txtNombreArticulo.Text.ToUpper()).ToList();

                bool existe   = false;
                int  num_fila = 1;

                if (list.Count > 0)
                {
                    if (cont_filas == 0)
                    {
                        dgvLinped.Rows.Add((cont_filas + 1).ToString(), list[0].ArticuloID.ToString(), txtPrecioArticulo.Text, txtCantidadArticulo.Text);
                        decimal importe = Convert.ToDecimal(dgvLinped.Rows[cont_filas].Cells[2].Value) * Convert.ToDecimal(dgvLinped.Rows[cont_filas].Cells[3].Value);
                        dgvLinped.Rows[cont_filas].Cells[4].Value = importe;
                        li = new Linped(Convert.ToInt32(txtPedidoID.Text), num_fila, list[0].ArticuloID.ToString(), importe, Convert.ToInt32(dgvLinped.Rows[num_fila].Cells[3].Value));

                        cont_filas++;
                        linpeds.Add(li);
                    }
                    else
                    {
                        foreach (DataGridViewRow fila in dgvLinped.Rows)
                        {
                            if (fila.Cells[1].Value.ToString() == list[0].ArticuloID.ToString())
                            {
                                existe   = true;
                                num_fila = fila.Index;
                            }
                        }

                        if (existe)
                        {
                            dgvLinped.Rows[num_fila].Cells[3].Value = (Convert.ToInt32(txtCantidadArticulo.Text) + Convert.ToInt32(dgvLinped.Rows[num_fila].Cells[3].Value)).ToString();
                            decimal importe = Convert.ToDecimal(dgvLinped.Rows[num_fila].Cells[2].Value) * Convert.ToDecimal(dgvLinped.Rows[num_fila].Cells[3].Value);
                            dgvLinped.Rows[num_fila].Cells[4].Value = importe;

                            li = new Linped(Convert.ToInt32(txtPedidoID.Text), num_fila + 1, list[0].ArticuloID.ToString(), importe, Convert.ToInt32(dgvLinped.Rows[num_fila].Cells[3].Value));

                            linpeds.RemoveAt(num_fila);
                            linpeds.Insert(num_fila, li);
                        }
                        //no existe
                        else
                        {
                            dgvLinped.Rows.Add((cont_filas + 1).ToString(), list[0].ArticuloID.ToString(), txtPrecioArticulo.Text, txtCantidadArticulo.Text);
                            decimal importe = Convert.ToDecimal(dgvLinped.Rows[cont_filas].Cells[2].Value) * Convert.ToDecimal(dgvLinped.Rows[cont_filas].Cells[3].Value);
                            dgvLinped.Rows[cont_filas].Cells[2].Value = importe;
                            cont_filas++;

                            li = new Linped(Convert.ToInt32(txtPedidoID.Text), num_fila + 1, list[0].ArticuloID.ToString(), importe, Convert.ToInt32(dgvLinped.Rows[num_fila].Cells[3].Value));
                            linpeds.Add(li);
                        }
                    }

                    // pedido.AddLinped(li);
                    pedido.Linpeds = linpeds;

                    decimal[] resumenFactura = new decimal[4];

                    resumenFactura = _pedido.Datosfactura(pedido);

                    total       = resumenFactura[0];
                    totalIva    = resumenFactura[1];
                    totalConIva = resumenFactura[2];

                    lbTotal.Text    = total.ToString() + " €";
                    lbIva.Text      = totalIva.ToString() + " €";
                    lbTotalIVa.Text = totalConIva.ToString() + " €";
                }
                else
                {
                    MessageBox.Show("No existe ese articulo");
                }
            }
        }
Example #5
0
        private void BtnAgregar_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (string.IsNullOrEmpty(lbIdProducto.Content.ToString()) || lbStock.Content.ToString().Length == 0)
                {
                    MessageBox.Show("Faltan ingresar algunos datos");
                }
                else if (lbPrecio.Content.ToString().Length == 0)
                {
                    MessageBox.Show("No tenemos ningun precio de venta");
                }
                else
                {
                    // bool registro = true;


                    if (linpeds.Count > 0)
                    {
                        var l = linpeds.Where(x => x.ArticuloID.Equals(lbIdProducto.Content.ToString(), comparison)).ToList();

                        if (l.Count > 0)
                        {
                            foreach (var t in l)
                            {
                                cantidad     = Convert.ToInt32(t.Cantidad);
                                importeTotal = Convert.ToDecimal(cantidad * t.Importe);
                                id           = t.ArticuloID;
                                precio       = t.Importe;
                                num_fila     = t.Linea;
                            }

                            li = new Linped(Convert.ToInt32(TxTPedidoID.Text), num_fila, id, precio, cantidad + Convert.ToInt32(txtCantidad.Text));

                            linpeds.RemoveAt(num_fila - 1);
                            linpeds.Insert(num_fila - 1, li);

                            listaVentas.Items.RemoveAt(num_fila - 1);
                            listaVentas.Items.Insert(num_fila - 1, new { num_fila, id, precio, cantidad, importeTotal });
                        }
                        else
                        {
                            cantidad     = Convert.ToInt32(txtCantidad.Text);
                            importeTotal = Convert.ToDecimal(lbPrecio.Content.ToString()) * Convert.ToDecimal(txtCantidad.Text);
                            id           = lbIdProducto.Content.ToString();
                            precio       = Convert.ToDecimal(lbPrecio.Content.ToString());


                            listaVentas.Items.Add(new { num_fila = num_fila + 1, id, precio, cantidad, importeTotal });
                            li = new Linped(Convert.ToInt32(TxTPedidoID.Text), num_fila + 1, lbIdProducto.Content.ToString(),
                                            Convert.ToDecimal(lbPrecio.Content.ToString()),
                                            Convert.ToInt32(txtCantidad.Text));
                            linpeds.Add(li);
                        }
                    }
                    //nuevo
                    else
                    {
                        importeTotal = Convert.ToDecimal(lbPrecio.Content.ToString()) * Convert.ToDecimal(txtCantidad.Text);
                        id           = lbIdProducto.Content.ToString();
                        precio       = Convert.ToDecimal(lbPrecio.Content.ToString());
                        cantidad     = Convert.ToInt32(txtCantidad.Text);

                        listaVentas.Items.Add(new { num_fila, id, precio, cantidad, importeTotal });
                        li = new Linped(Convert.ToInt32(TxTPedidoID.Text), num_fila, lbIdProducto.Content.ToString(), Convert.ToDecimal(lbPrecio.Content.ToString()),
                                        Convert.ToInt32(txtCantidad.Text));
                        linpeds.Add(li);


                        num_fila++;
                    }


                    pedido.Linpeds = linpeds;

                    decimal[] resumenFactura = new decimal[4];

                    resumenFactura = _pedido.Datosfactura(pedido);

                    total       = resumenFactura[0];
                    totalIva    = resumenFactura[1];
                    totalConIva = resumenFactura[2];

                    lbSubTotal.Content    = total.ToString() + " €";
                    lbIva.Content         = totalIva.ToString() + " €";
                    lbTotalConIva.Content = totalConIva.ToString() + " €";
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Faltan datos");
            }
        }
        private void btnColocar_Click(object sender, EventArgs e)
        {
            if (txtPedidoID.Text != "" && txtUsuarioID.Text != "")
            {
                List <Articulo> list = _listArticulos.Where(x => x.Nombre.ToUpper() == txtNombreArticulo.Text.ToUpper()).ToList();

                bool existe = false;


                if (list.Count > 0)
                {
                    if (cont_filas == 0)
                    {
                        dgvLinped.Rows.Add((cont_filas + 1).ToString(), list[0].ArticuloID.ToString(), txtPrecioArticulo.Text, txtCantidadArticulo.Text);
                        // decimal importe = Convert.ToDecimal(dgvLinped.Rows[cont_filas].Cells[2].Value) * Convert.ToDecimal(dgvLinped.Rows[cont_filas].Cells[3].Value);
                        decimal importe = Convert.ToDecimal(txtPrecioArticulo.Text) * Convert.ToDecimal(txtCantidadArticulo.Text);
                        dgvLinped.Rows[cont_filas].Cells[4].Value = importe;

                        li = new Linped(Convert.ToInt32(txtPedidoID.Text), num_fila + 1, list[0].ArticuloID.ToString(), Convert.ToDecimal(txtPrecioArticulo.Text), Convert.ToInt32(dgvLinped.Rows[num_fila].Cells[3].Value));

                        cont_filas++;
                        linpeds.Add(li);
                        pedido.Linpeds = linpeds;
                    }
                    else
                    {
                        foreach (DataGridViewRow fila in dgvLinped.Rows)
                        {
                            if (fila.Cells[1].Value.ToString() == list[0].ArticuloID.ToString())
                            {
                                existe   = true;
                                num_fila = fila.Index;
                            }
                        }

                        if (existe)
                        {
                            dgvLinped.Rows[num_fila].Cells[3].Value = (Convert.ToInt32(txtCantidadArticulo.Text) + Convert.ToInt32(dgvLinped.Rows[num_fila].Cells[3].Value)).ToString();
                            decimal importe = Convert.ToDecimal(dgvLinped.Rows[num_fila].Cells[2].Value) * Convert.ToDecimal(dgvLinped.Rows[num_fila].Cells[3].Value);
                            dgvLinped.Rows[num_fila].Cells[4].Value = importe;

                            li = new Linped(Convert.ToInt32(txtPedidoID.Text), num_fila + 1, list[0].ArticuloID.ToString(), Convert.ToDecimal(txtPrecioArticulo.Text), Convert.ToInt32(dgvLinped.Rows[num_fila].Cells[3].Value));

                            linpeds.RemoveAt(num_fila);
                            linpeds.Insert(num_fila, li);

                            /*   _negLinped.Actualizar(li);
                             *
                             * if(_negLinped.Actualizar(li))
                             * {
                             *     li = linpeds.FirstOrDefault(x => x.Linea == num_fila+1);
                             *
                             *     if (li != null)
                             *     {
                             *         linpeds.RemoveAt(num_fila);
                             *         linpeds.Insert(num_fila, li);
                             *     }
                             * }*/
                        }
                        else
                        {
                            dgvLinped.Rows.Add((cont_filas + 1).ToString(), list[0].ArticuloID.ToString(), txtPrecioArticulo.Text, txtCantidadArticulo.Text);
                            // decimal importe = Convert.ToDecimal(dgvLinped.Rows[cont_filas].Cells[2].Value) * Convert.ToDecimal(dgvLinped.Rows[cont_filas].Cells[3].Value);
                            decimal importe = Convert.ToDecimal(txtPrecioArticulo.Text) * Convert.ToDecimal(txtCantidadArticulo.Text);
                            dgvLinped.Rows[cont_filas].Cells[4].Value = importe;
                            cont_filas++;

                            li = new Linped(Convert.ToInt32(txtPedidoID.Text), num_fila + 1, list[0].ArticuloID.ToString(), Convert.ToDecimal(txtPrecioArticulo.Text), Convert.ToInt32(dgvLinped.Rows[num_fila].Cells[3].Value));
                            linpeds.Add(li);
                            pedido.Linpeds = linpeds;
                        }
                    }

                    // pedido.AddLinped(li);
                    //  pedido.Linpeds = linpeds;

                    decimal[] resumenFactura = new decimal[3];

                    resumenFactura = _pedido.Datosfactura(pedido, 21);

                    total       = resumenFactura[0];
                    totalIva    = resumenFactura[1];
                    totalConIva = resumenFactura[2];

                    lbTotal.Text    = total.ToString() + " €";
                    lbIva.Text      = totalIva.ToString() + " €";
                    lbTotalIVa.Text = totalConIva.ToString() + " €";
                }
                else
                {
                    MessageBox.Show("No existe ese articulo");
                }
            }
            else
            {
                MessageBox.Show("Debe crear un nuevo pedido y/o añdir un usario al pedido");
            }
        }