Ejemplo n.º 1
0
 void CargarDatosAlFormulario()
 {
     pedidoEditando                 = PedidoBL.BuscarPorId((int)idPedido);
     lblNumeroPedido.Text           = pedidoEditando.NumeroPedido.ToString();
     lblCCF.Text                    = pedidoEditando.NumeroCCF;
     dtpFechaEntrega.Value          = pedidoEditando.FechaEntrega;
     cmbEstadoPedido.SelectedItem   = pedidoEditando.Estado;
     dtpFechaCreacion.Value         = pedidoEditando.FechaCreacion;
     txtDireccionEntregaPedido.Text = pedidoEditando.DireccionEntrega;
     cliente         = ClienteBL.BuscarPorId(pedidoEditando.IdCliente);
     lblCliente.Text = string.Concat(cliente.PrimerNombre, " ", cliente.SegundoNombre, " ",
                                     cliente.PrimerApellido, " ", cliente.SegundoApellido);
     lblDui.Text = cliente.DUI;
     listadoViejoDetallesPedido           = DetallePedidoBL.ObtenerTodos((int)idPedido);
     cmbEstadoDetallePedido.SelectedIndex = 0;
     if (listadoViejoDetallesPedido != null)
     {
         for (int i = 0; i < listadoViejoDetallesPedido.Count; i++)
         {
             dgvListadoDetallesPedido.Rows.Add();
             dgvListadoDetallesPedido.Rows[i].Cells[0].Value = listadoViejoDetallesPedido[i].Id;
             dgvListadoDetallesPedido.Rows[i].Cells[1].Value = listadoViejoDetallesPedido[i].Cantidad;
             dgvListadoDetallesPedido.Rows[i].Cells[2].Value = listadoViejoDetallesPedido[i].Producto;
             dgvListadoDetallesPedido.Rows[i].Cells[3].Value = listadoViejoDetallesPedido[i].Descripcion;
             dgvListadoDetallesPedido.Rows[i].Cells[4].Value = listadoViejoDetallesPedido[i].Estado;
             dgvListadoDetallesPedido.Rows[i].Cells[5].Value = listadoViejoDetallesPedido[i].PrecioUnitario;
             dgvListadoDetallesPedido.Rows[i].Cells[6].Value = listadoViejoDetallesPedido[i].SubTotal;
             listadoDetallesPedido.Add(listadoViejoDetallesPedido[i]);
         }
         CalcularTotales();
     }
 }
Ejemplo n.º 2
0
        private void btnEliminarPedido_Click(object sender, EventArgs e)
        {
            int          idPedidoAEliminar = int.Parse(dgvListadoPedidos.SelectedRows[0].Cells[0].Value.ToString());
            DialogResult resultadoDialgo   = MetroMessageBox.Show(this, "¿Desea eliminar este pedido?", "Aviso",
                                                                  MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);

            if (resultadoDialgo == DialogResult.Yes)
            {
                List <DetallePedido> listadoDetalles = DetallePedidoBL.ObtenerTodos(idPedidoAEliminar);
                if (listadoDetalles.Count >= 1)
                {
                    DialogResult resultado = MetroMessageBox.Show(this, "Se eliminarán el pedido y todos sus detalles.", "¡Advertencia!",
                                                                  MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
                    if (resultado == DialogResult.OK)
                    {
                        foreach (var item in listadoDetalles)
                        {
                            DetallePedidoBL.Eliminar(item.Id);
                        }
                        PedidoBL.Eliminar(idPedidoAEliminar);
                    }
                }
                else
                {
                    PedidoBL.Eliminar(idPedidoAEliminar);
                }
                CargarPedidos();
            }
        }
Ejemplo n.º 3
0
 void CargarDetalles()
 {
     try
     {
         listadoDetallesPedido = DetallePedidoBL.ObtenerTodos(idPedido);
         dgvListadoDetallesPedido.Rows.Clear();
         pedido = PedidoBL.BuscarPorId(idPedido);
         lblNumeroPedido.Text     = pedido.NumeroPedido.ToString();
         lblNumeroCCF.Text        = pedido.NumeroCCF;
         lblFechaCreacion.Text    = pedido.FechaCreacion.ToString("d");
         lblEstadoPedido.Text     = pedido.Estado;
         lblFechaEntrega.Text     = pedido.FechaEntrega.ToString("d");
         lblDireccionEntrega.Text = pedido.DireccionEntrega;
         cliente         = ClienteBL.BuscarPorId(pedido.IdCliente);
         lblCliente.Text = string.Concat(cliente.PrimerNombre, " ", cliente.SegundoNombre, " ",
                                         cliente.PrimerApellido, " ", cliente.SegundoApellido);
         lblDuiCliente.Text = cliente.DUI;
         lblUsuario.Text    = string.Concat(FrmPrincipal.usuarioActual.Nombres, " ", FrmPrincipal.usuarioActual.Apellidos);
         double sumas = 0.00f;
         for (int i = 0; i < listadoDetallesPedido.Count; i++)
         {
             dgvListadoDetallesPedido.Rows.Add();
             dgvListadoDetallesPedido.Rows[i].Cells[0].Value = listadoDetallesPedido[i].Id;
             dgvListadoDetallesPedido.Rows[i].Cells[1].Value = listadoDetallesPedido[i].Estado;
             dgvListadoDetallesPedido.Rows[i].Cells[2].Value = listadoDetallesPedido[i].Producto;
             dgvListadoDetallesPedido.Rows[i].Cells[3].Value = listadoDetallesPedido[i].Descripcion;
             dgvListadoDetallesPedido.Rows[i].Cells[4].Value = listadoDetallesPedido[i].Cantidad;
             dgvListadoDetallesPedido.Rows[i].Cells[5].Value = listadoDetallesPedido[i].PrecioUnitario.ToString("C");
             dgvListadoDetallesPedido.Rows[i].Cells[6].Value = listadoDetallesPedido[i].SubTotal.ToString("C");
             sumas += listadoDetallesPedido[i].SubTotal;
         }
         lblSumas.Text = sumas.ToString("C");
         lblIva.Text   = (sumas * 0.13).ToString("C");
         lblTotal.Text = (sumas * 1.13).ToString("C");
     }
     catch (Exception error)
     {
         MetroMessageBox.Show(this, $"¡Ha ocurrido un error!\nMÁS INFORMACIÓN: {error.Message}", "Error", MessageBoxButtons.OK,
                              MessageBoxIcon.Error);
         Close();
     }
 }
Ejemplo n.º 4
0
        void GuardarPedido()
        {
            Cursor = Cursors.WaitCursor;
            //    try
            //  {
            if (dgvListadoDetallesPedido.Rows.Count < 1)
            {
                epValidadorControles.SetError(dgvListadoDetallesPedido, "Debe agregar al menos un detalle.");
            }
            else
            {
                if (idPedido == null)
                {
                    int    resultadoPedido        = 0;
                    int    resultadoDetallePedido = 0;
                    Pedido pedidoARegistrar       = new Pedido();
                    pedidoARegistrar.IdCliente        = cliente.Id;
                    pedidoARegistrar.IdUsuario        = usuarioActual.Id;
                    pedidoARegistrar.NumeroPedido     = int.Parse(lblNumeroPedido.Text);
                    pedidoARegistrar.FechaCreacion    = dtpFechaCreacion.Value;
                    pedidoARegistrar.FechaEntrega     = dtpFechaEntrega.Value;
                    pedidoARegistrar.DireccionEntrega = txtDireccionEntregaPedido.Text;
                    pedidoARegistrar.Estado           = cmbEstadoPedido.SelectedItem.ToString();
                    pedidoARegistrar.NumeroCCF        = lblCCF.Text;
                    resultadoPedido += PedidoBL.Guardar(pedidoARegistrar);
                    for (int i = 0; i < listadoDetallesPedido.Count; i++)
                    {
                        DetallePedido detallePedidoARegistrar = new DetallePedido();
                        detallePedidoARegistrar.IdPedido       = (PedidoBL.BuscarPorNumeroPedido(int.Parse(lblNumeroPedido.Text))).Id;
                        detallePedidoARegistrar.IdProducto     = listadoDetallesPedido[i].IdProducto;
                        detallePedidoARegistrar.Cantidad       = listadoDetallesPedido[i].Cantidad;
                        detallePedidoARegistrar.PrecioUnitario = listadoDetallesPedido[i].PrecioUnitario;
                        detallePedidoARegistrar.Estado         = listadoDetallesPedido[i].Estado;
                        resultadoDetallePedido += DetallePedidoBL.Guardar(detallePedidoARegistrar);
                    }
                    MetroMessageBox.Show(this, $"{resultadoPedido} pedido registrado.\n{resultadoDetallePedido} detalle(s) del pedido registrado(s).",
                                         "¡Aviso!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Thread hiloDos = new Thread(new ThreadStart(MostrarBarra));
                    hiloDos.Start();
                    FrmCCF informe = new FrmCCF(int.Parse(lblNumeroPedido.Text), ref hiloDos);
                    informe.ShowDialog();
                    Limpiar();
                }
                else
                {
                    int resultadoPedido           = 0;
                    int resultDetallesModificados = 0;
                    int resultDetallesAñadidos    = 0;
                    int resultadoEliminados       = 0;

                    pedidoEditando.IdCliente        = cliente.Id;
                    pedidoEditando.FechaCreacion    = dtpFechaCreacion.Value;
                    pedidoEditando.FechaEntrega     = dtpFechaEntrega.Value;
                    pedidoEditando.DireccionEntrega = txtDireccionEntregaPedido.Text;
                    pedidoEditando.Estado           = cmbEstadoPedido.SelectedItem.ToString();
                    resultadoPedido += PedidoBL.Modificar(pedidoEditando);
                    for (int i = 0; i < listadoDetallesPedido.Count; i++)
                    {
                        DetallePedido detallePedido = new DetallePedido();
                        detallePedido.Id             = listadoDetallesPedido[i].Id;
                        detallePedido.IdPedido       = (int)idPedido;
                        detallePedido.IdProducto     = listadoDetallesPedido[i].IdProducto;
                        detallePedido.Cantidad       = listadoDetallesPedido[i].Cantidad;
                        detallePedido.PrecioUnitario = listadoDetallesPedido[i].PrecioUnitario;
                        detallePedido.Estado         = listadoDetallesPedido[i].Estado;

                        if (listadoViejoDetallesPedido.Find(x => x.Id == listadoDetallesPedido[i].Id) != null)
                        {
                            resultDetallesModificados += DetallePedidoBL.Modificar(detallePedido);
                        }
                        else
                        {
                            resultDetallesAñadidos += DetallePedidoBL.Guardar(detallePedido);
                        }
                    }
                    if (detallesViejosAEliminarDeLaBD.Count >= 1)
                    {
                        for (int i = 0; i < detallesViejosAEliminarDeLaBD.Count; i++)
                        {
                            resultadoEliminados += DetallePedidoBL.Eliminar(detallesViejosAEliminarDeLaBD[i]);
                        }
                    }
                    objetoPedidosActual.CargarPedidos();
                    DialogResult resultadoDelDialgo = MetroMessageBox.Show
                                                          (this, $"{resultadoPedido} pedido actualizado.\n{resultDetallesModificados} detalle(s) actualizado(s).\n" +
                                                          $"{resultDetallesAñadidos} detalle(s) registrado(s).\n{resultadoEliminados} detalle(s) eliminado(s).\n¿Desea cerrar el editor?",
                                                          "Aviso", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                    if (resultadoDelDialgo == DialogResult.Yes)
                    {
                        Close();
                    }
                }
            }

            /*    }
             *   catch (Exception error)
             *   {
             *        MetroMessageBox.Show(this, $"¡Ha ocurrido un error!\nMÁS INFORMACIÓN: {error.Message}", "Error", MessageBoxButtons.OK,
             *          MessageBoxIcon.Error);
             *   }*/
            Cursor = Cursors.Arrow;
        }