/// <summary>
 /// Loads the products names
 /// </summary>
 private void CargarNombreProducto()
 {
     try
     {
         cboNombreProducto.Items.Clear();
         foreach (ProductoE i in prl.CargarProducto("", cboCategoriaProducto.Text))
         {
             if (i.Activo)
             {
                 cboNombreProducto.Items.Add(i.Nombre);
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Cargando productos", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
 /// <summary>
 /// Loads the products from the database
 /// </summary>
 private void CargarProductos()
 {
     try
     {
         if (cboCategoriaProducto.Text.Equals("PRODUCTOS"))
         {
             List <ProductoE> lstpro = prl.CargarProducto(txtBuscarProducto.Text, "");
             dgvConsultaProducto.DataSource = lstpro;
         }
         else
         {
             List <ProductoE> lstpro = prl.CargarProducto(txtBuscarProducto.Text, cboCategoriaProducto.Text);
             dgvConsultaProducto.DataSource = lstpro;
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Cargando productos", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
        /*
         * This method connect the logic layer with presentation layer. Call one data grid view
         * and save objects that brings a logic method
         */

        public void CargarProductos()
        {
            dtgvProductos.DataSource = null;
            dtgvProductos.DataSource = producto.CargarProducto("", "");
        }
        /// <summary>
        /// Generates a bill for the products and services sold
        /// </summary>
        /// <param name="tipoFactura">
        /// string bill type: only the products or everything
        /// </param>
        private void Factura(string tipoFactura)
        {
            try
            {
                DialogResult result = MessageBox.Show("¿Seguro que desea realizar el pago seleccionado?",
                                                      "Realizando Pago", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                if (result == DialogResult.Yes)
                {
                    decimal subtotal = 0;
                    decimal iva      = 0;
                    decimal total    = 0;

                    if (tipoFactura.Equals("Productos"))
                    {
                        if (dgvPedidos.CurrentRow.Cells[1].Value.Equals("COMPLETO"))
                        {
                            PedidoCompletoE p = (PedidoCompletoE)dgvPedidos.CurrentRow.Cells[0].Value;
                            p.CodigoCajero     = u.Codigo;
                            p.FechaFactura     = dtpFecha.Value;
                            p.PagaSoloProducto = true;
                            pl.GuardarPedidoCompletoFactura(p);

                            WindowReceipt factura = new WindowReceipt();
                            factura.lblNumeroFacturaT.Text = p.Id.ToString();
                            factura.lblFechaT.Text         = p.FechaFactura.ToString();
                            factura.lblCedulaClienteT.Text = p.CedulaCliente;

                            foreach (UsuarioE i in ul.CargarUsuario())
                            {
                                if (i.Codigo == p.CodigoCajero)
                                {
                                    factura.lblCajeroT.Text = i.Nombre;
                                }
                            }

                            foreach (PedidoCompletoProductoE i in pl.CargarPedidoCompletoProducto())
                            {
                                if (i.IdPedido == p.Id)
                                {
                                    foreach (ProductoE pr in prl.CargarProducto("", ""))
                                    {
                                        if (pr.Id == i.IdPedido)
                                        {
                                            subtotal += (pr.Precio * i.Cantidad);
                                            factura.txtVentas.Text += "\n" + pr.Nombre + "\n" + i.Cantidad
                                                                      + "\t" + pr.Precio.ToString("0.00") + "\t" + i.PrecioTotal.ToString("0.00") + "\n";
                                            break;
                                        }
                                    }
                                }
                            }

                            iva   = subtotal * (decimal)0.13;
                            total = subtotal + iva;

                            factura.lblSubtotalT.Text = subtotal.ToString();
                            factura.lblIVAT.Text      = iva.ToString();
                            factura.lblTotalT.Text    = total.ToString();

                            factura.ShowDialog();
                        }
                        else if (dgvPedidos.CurrentRow.Cells[1].Value.Equals("CLIENTE"))
                        {
                            PedidoClienteE p = (PedidoClienteE)dgvPedidos.CurrentRow.Cells[0].Value;
                            p.CodigoCajero     = u.Codigo;
                            p.FechaFactura     = dtpFecha.Value;
                            p.PagaSoloProducto = true;
                            pl.GuardarPedidoClienteFactura(p);

                            WindowReceipt factura = new WindowReceipt();
                            factura.lblNumeroFacturaT.Text = p.Id.ToString();
                            factura.lblFechaT.Text         = p.FechaFactura.ToString();
                            factura.lblCedulaClienteT.Text = p.CedulaCliente;

                            foreach (UsuarioE i in ul.CargarUsuario())
                            {
                                if (i.Codigo == p.CodigoCajero)
                                {
                                    factura.lblCajeroT.Text = i.Nombre;
                                }
                            }

                            foreach (PedidoClienteProductoE i in pl.CargarPedidoClienteProducto())
                            {
                                if (i.IdPedido == p.Id)
                                {
                                    foreach (ProductoE pr in prl.CargarProducto("", ""))
                                    {
                                        if (pr.Id == i.IdPedido)
                                        {
                                            subtotal += (pr.Precio * i.Cantidad);
                                            factura.txtVentas.Text += "\n" + pr.Nombre + "\n" + i.Cantidad
                                                                      + "\t" + pr.Precio.ToString("0.00") + "\t" + i.PrecioTotal.ToString("0.00") + "\n";
                                            break;
                                        }
                                    }
                                }
                            }

                            iva   = subtotal * (decimal)0.13;
                            total = subtotal + iva;

                            factura.lblSubtotalT.Text = subtotal.ToString();
                            factura.lblIVAT.Text      = iva.ToString();
                            factura.lblTotalT.Text    = total.ToString();

                            factura.ShowDialog();
                        }
                    }
                    else
                    {
                        if (dgvPedidos.CurrentRow.Cells[1].Value.Equals("COMPLETO"))
                        {
                            PedidoCompletoE p = (PedidoCompletoE)dgvPedidos.CurrentRow.Cells[0].Value;
                            p.CodigoCajero = u.Codigo;
                            p.FechaFactura = dtpFecha.Value;


                            WindowReceipt factura = new WindowReceipt();
                            factura.lblNumeroFacturaT.Text = p.Id.ToString();
                            factura.lblFechaT.Text         = p.FechaFactura.ToString();
                            factura.lblCedulaClienteT.Text = p.CedulaCliente;

                            foreach (UsuarioE i in ul.CargarUsuario())
                            {
                                if (i.Codigo == p.CodigoCajero)
                                {
                                    factura.lblCajeroT.Text = i.Nombre;
                                }
                            }

                            if (p.PagaSoloProducto != true)
                            {
                                foreach (PedidoCompletoProductoE i in pl.CargarPedidoCompletoProducto())
                                {
                                    if (i.IdPedido == p.Id)
                                    {
                                        foreach (ProductoE pr in prl.CargarProducto("", ""))
                                        {
                                            if (pr.Id == i.IdPedido)
                                            {
                                                subtotal += (pr.Precio * i.Cantidad);
                                                factura.txtVentas.Text += "\n" + pr.Nombre + "\n" + i.Cantidad
                                                                          + "\t" + pr.Precio.ToString("0.00") + "\t" + i.PrecioTotal.ToString("0.00") + "\n";
                                                break;
                                            }
                                        }
                                    }
                                }
                            }

                            foreach (PedidoCompletoServicioE i in pl.CargarPedidoCompletoServicio())
                            {
                                if (i.IdPedido == p.Id)
                                {
                                    foreach (ServicioE se in sel.CargarServicio("", ""))
                                    {
                                        if (se.Id == i.IdPedido)
                                        {
                                            subtotal += (se.Precio * i.Cantidad);
                                            factura.txtVentas.Text += "\n" + se.Nombre + "\n" + i.Cantidad
                                                                      + "\t" + se.Precio.ToString("0.00") + "\t" + i.PrecioTotal.ToString("0.00") + "\n";
                                            break;
                                        }
                                    }
                                }
                            }

                            iva   = subtotal * (decimal)0.13;
                            total = subtotal + iva;

                            p.PagaSoloProducto = false;
                            pl.GuardarPedidoCompletoFactura(p);

                            factura.lblSubtotalT.Text = subtotal.ToString();
                            factura.lblIVAT.Text      = iva.ToString();
                            factura.lblTotalT.Text    = total.ToString();

                            factura.ShowDialog();
                        }
                        else if (dgvPedidos.CurrentRow.Cells[1].Value.Equals("SOLO SERVICIO"))
                        {
                            PedidoSoloServicioE p = (PedidoSoloServicioE)dgvPedidos.CurrentRow.Cells[0].Value;
                            p.CodigoCajero = u.Codigo;
                            p.FechaFactura = dtpFecha.Value;
                            pl.GuardarPedidoSoloServicioFactura(p);

                            WindowReceipt factura = new WindowReceipt();
                            factura.lblNumeroFacturaT.Text = p.Id.ToString();
                            factura.lblFechaT.Text         = p.FechaFactura.ToString();
                            factura.lblCedulaClienteT.Text = p.CedulaCliente;

                            foreach (UsuarioE i in ul.CargarUsuario())
                            {
                                if (i.Codigo == p.CodigoCajero)
                                {
                                    factura.lblCajeroT.Text = i.Nombre;
                                }
                            }

                            foreach (PedidoSoloServicioServicioE i in pl.CargarPedidoSoloServicioServicio())
                            {
                                if (i.IdPedido == p.Id)
                                {
                                    foreach (ServicioE se in sel.CargarServicio("", ""))
                                    {
                                        if (se.Id == i.IdPedido)
                                        {
                                            factura.txtVentas.Text += "\n" + se.Nombre + "\n" + i.Cantidad
                                                                      + "\t" + se.Precio.ToString("0.00") + "\t" + i.PrecioTotal.ToString("0.00") + "\n";
                                            break;
                                        }
                                    }
                                }
                            }

                            factura.lblSubtotalT.Text = p.SubTotal.ToString();
                            factura.lblIVAT.Text      = p.IVA.ToString();
                            factura.lblTotalT.Text    = p.Total.ToString();

                            factura.ShowDialog();
                        }
                        else if (dgvPedidos.CurrentRow.Cells[1].Value.Equals("CLIENTE"))
                        {
                            PedidoClienteE p = (PedidoClienteE)dgvPedidos.CurrentRow.Cells[0].Value;
                            p.CodigoCajero = u.Codigo;
                            p.FechaFactura = dtpFecha.Value;

                            WindowReceipt factura = new WindowReceipt();
                            factura.lblNumeroFacturaT.Text = p.Id.ToString();
                            factura.lblFechaT.Text         = p.FechaFactura.ToString();
                            factura.lblCedulaClienteT.Text = p.CedulaCliente;

                            foreach (UsuarioE i in ul.CargarUsuario())
                            {
                                if (i.Codigo == p.CodigoCajero)
                                {
                                    factura.lblCajeroT.Text = i.Nombre;
                                }
                            }

                            if (p.PagaSoloProducto != true)
                            {
                                foreach (PedidoClienteProductoE i in pl.CargarPedidoClienteProducto())
                                {
                                    if (i.IdPedido == p.Id)
                                    {
                                        foreach (ProductoE pr in prl.CargarProducto("", ""))
                                        {
                                            if (pr.Id == i.IdPedido)
                                            {
                                                subtotal += (pr.Precio * i.Cantidad);
                                                factura.txtVentas.Text += "\n" + pr.Nombre + "\n" + i.Cantidad
                                                                          + "\t" + pr.Precio.ToString("0.00") + "\t" + i.PrecioTotal.ToString("0.00") + "\n";
                                                break;
                                            }
                                        }
                                    }
                                }
                            }

                            foreach (PedidoClienteServicioE i in pl.CargarPedidoClienteServicio())
                            {
                                if (i.IdPedido == p.Id)
                                {
                                    foreach (ServicioE se in sel.CargarServicio("", ""))
                                    {
                                        if (se.Id == i.IdPedido)
                                        {
                                            subtotal += (se.Precio * i.Cantidad);
                                            factura.txtVentas.Text += "\n" + se.Nombre + "\n" + i.Cantidad
                                                                      + "\t" + se.Precio.ToString("0.00") + "\t" + i.PrecioTotal.ToString("0.00") + "\n";
                                            break;
                                        }
                                    }
                                }
                            }

                            iva   = subtotal * (decimal)0.13;
                            total = subtotal + iva;

                            p.PagaSoloProducto = false;
                            pl.GuardarPedidoClienteFactura(p);

                            factura.lblSubtotalT.Text = subtotal.ToString();
                            factura.lblIVAT.Text      = iva.ToString();
                            factura.lblTotalT.Text    = total.ToString();

                            factura.ShowDialog();
                        }
                    }
                    CargarPedidos();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Generando Factura", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemplo n.º 5
0
 /// <summary>
 /// Loads the sells to the store room section
 /// </summary>
 private void CargarVentas()
 {
     try
     {
         dgvVentas.Rows.Clear();
         if (dgvPedidos.SelectedRows.Count > 0 && dgvPedidos.CurrentRow != null)
         {
             if (dgvPedidos.CurrentRow.Cells[1].Value.Equals("COMPLETO"))
             {
                 foreach (PedidoCompletoProductoE p in pl.CargarPedidoCompletoProducto())
                 {
                     if (p.IdPedido == (int)dgvPedidos.CurrentRow.Cells[2].Value)
                     {
                         foreach (ProductoE i in prl.CargarProducto("", ""))
                         {
                             if (i.Id == p.IdVenta)
                             {
                                 dgvVentas.Rows.Add("PRODUCTO", i.Id, i.Nombre, i.Categoria, i.Descripcion, p.Cantidad);
                                 break;
                             }
                         }
                     }
                 }
                 foreach (PedidoCompletoServicioE s in pl.CargarPedidoCompletoServicio())
                 {
                     if (s.IdPedido == (int)dgvPedidos.CurrentRow.Cells[2].Value)
                     {
                         foreach (ServicioE i in sel.CargarServicio("", ""))
                         {
                             if (i.Id == s.IdVenta)
                             {
                                 dgvVentas.Rows.Add("SERVICIO", i.Id, i.Nombre, i.Categoria, i.Descripcion, s.Cantidad);
                                 break;
                             }
                         }
                     }
                 }
             }
             else if (dgvPedidos.CurrentRow.Cells[1].Value.Equals("SOLO SERVICIO"))
             {
                 foreach (PedidoSoloServicioServicioE s in pl.CargarPedidoSoloServicioServicio())
                 {
                     if (s.IdPedido == (int)dgvPedidos.CurrentRow.Cells[2].Value)
                     {
                         foreach (ServicioE i in sel.CargarServicio("", ""))
                         {
                             if (i.Id == s.IdVenta)
                             {
                                 dgvVentas.Rows.Add("SERVICIO", i.Id, i.Nombre, i.Categoria, i.Descripcion, s.Cantidad);
                                 break;
                             }
                         }
                     }
                 }
             }
             else if (dgvPedidos.CurrentRow.Cells[1].Value.Equals("CLIENTE"))
             {
                 foreach (PedidoClienteProductoE p in pl.CargarPedidoClienteProducto())
                 {
                     if (p.IdPedido == (int)dgvPedidos.CurrentRow.Cells[2].Value)
                     {
                         foreach (ProductoE i in prl.CargarProducto("", ""))
                         {
                             if (i.Id == p.IdVenta)
                             {
                                 dgvVentas.Rows.Add("PRODUCTO", i.Id, i.Nombre, i.Categoria, i.Descripcion, p.Cantidad);
                                 break;
                             }
                         }
                     }
                 }
                 foreach (PedidoClienteServicioE s in pl.CargarPedidoClienteServicio())
                 {
                     if (s.IdPedido == (int)dgvPedidos.CurrentRow.Cells[2].Value)
                     {
                         foreach (ServicioE i in sel.CargarServicio("", ""))
                         {
                             if (i.Id == s.IdVenta)
                             {
                                 dgvVentas.Rows.Add("SERVICIO", i.Id, i.Nombre, i.Categoria, i.Descripcion, s.Cantidad);
                                 break;
                             }
                         }
                     }
                 }
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Cargando pedidos", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }