コード例 #1
0
        private void btnInformacionPedido_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                if (this.Editar)
                {
                    Thread      hilo     = new Thread(() => Mensajes.MensajeEspera("Facturando y terminando"));
                    FrmComandas comandas = new FrmComandas();
                    comandas.Id_pedido = this.Id_pedido;
                    comandas.AsignarTablas(this.tablaspedido.ReturnTablaTemp());
                    bool plato    = false;
                    bool bebida   = false;
                    int  imprimir = 0;
                    foreach (DataRow row in this.tablaspedido.ReturnTablaTemp().Rows)
                    {
                        if (row["Tipo"].Equals("PLATO"))
                        {
                            plato = true;
                        }
                        else
                        {
                            bebida = true;
                        }
                        if (plato && bebida)
                        {
                            break;
                        }
                    }

                    if (plato && bebida)
                    {
                        imprimir = 2;
                    }
                    else
                    {
                        imprimir = 1;
                    }
                    comandas.ImprimirFactura(imprimir);
                    hilo.Abort();
                    this.Close();
                }
                else
                {
                    this.SumarPrecios();
                    this.ContextMenuDatosPedido.ObtenerPrecio();
                    PoperContainer.Show(btnInformacionPedido);
                }
            }
        }
コード例 #2
0
        private void BtnInformacionPedido_Click(object sender, EventArgs e)
        {
            if (this.IsEditar)
            {
                bool result = this.dgvProductosEditar.Rows.Count > 0 ? true : false;
                if (result)
                {
                    MensajeEspera.ShowWait("Imprimiendo y finalizando");
                    DataTable TablaDetallePedido = this.tablasPedido.dtDetallePedidoEditado();
                    if (this.dgvProductosEditar.Rows.Count > 0)
                    {
                        comandas.Id_pedido = this.Id_pedido;
                        comandas.AsignarTablas(TablaDetallePedido);
                        this.tablasPedido.IsEditar = false;
                        bool   plato    = false;
                        bool   bebida   = false;
                        int    imprimir = 0;
                        string rpta     = "";
                        foreach (DataRow row in TablaDetallePedido.Rows)
                        {
                            if (row["Tipo"].Equals("PLATO"))
                            {
                                rpta = NPedido.ActualizarDetallePedido(new List <string> {
                                    Convert.ToString(this.Id_pedido),
                                    Convert.ToString(row["Id_tipo"]), "PLATO", Convert.ToString(row["Precio"]),
                                    Convert.ToString(row["Cantidad"]), Convert.ToString(row["Observaciones"]), "0", "SUMAR"
                                });
                                plato = true;
                            }
                            else
                            {
                                rpta = NPedido.ActualizarDetallePedido(new List <string> {
                                    Convert.ToString(this.Id_pedido),
                                    Convert.ToString(row["Id_tipo"]), "BEBIDA", Convert.ToString(row["Precio"]),
                                    Convert.ToString(row["Cantidad"]), Convert.ToString(row["Observaciones"]), "0", "SUMAR"
                                });
                                bebida = true;
                            }
                            if (plato && bebida)
                            {
                                break;
                            }
                        }
                        if (this.chkImprimirComandas.Checked)
                        {
                            if (plato && bebida)
                            {
                                imprimir = 2;
                            }
                            else
                            {
                                imprimir = 1;
                            }

                            comandas.ImprimirFactura(imprimir);
                        }
                    }

                    MensajeEspera.CloseForm();
                    this.DialogResult = DialogResult.OK;
                    this.Close();
                }
                else
                {
                    this.DialogResult = DialogResult.OK;
                    this.Close();
                }
            }
            else
            {
                this.contextMenuDatosPedido.IsEditar = false;
                this.SumarPrecios();
                this.containerDatosPedido.Show(btnInformacionPedido);
            }
        }
コード例 #3
0
        private void BtnTerminarPedido_Click(object sender, EventArgs e)
        {
            Thread hilo = new Thread(() => Mensajes.MensajeEspera("Facturando y terminando"));

            try
            {
                hilo.Start();
                this.Focus();
                string rpta = "";
                int    id_pedido;
                if (this.Editar)
                {
                    if (this.Comprobaciones())
                    {
                        DataTable TablaDetallePedido = this.tablaspedido.ReturnTablaDetalle();
                        if (TablaDetallePedido.Rows.Count > 0)
                        {
                            this.Close();
                        }
                        else
                        {
                            Mensajes.MensajeErrorForm("Debe seleccionar como mínimo un plato o bebida");
                        }
                    }
                }
                else
                {
                    if (this.Comprobaciones())
                    {
                        DataTable TablaDetallePedido = this.tablaspedido.ReturnTablaDetalle();
                        if (TablaDetallePedido.Rows.Count > 0)
                        {
                            rpta =
                                NPedido.InsertarPedido(this.Variables(), out id_pedido,
                                                       TablaDetallePedido);
                            if (rpta.Equals("OK"))
                            {
                                FrmObservarMesas FrmObservarMesas = FrmObservarMesas.GetInstancia();
                                FrmObservarMesas.ObtenerPedido(id_pedido, this.Numero_mesa, "OCUPADA");

                                FrmComandas comandas = new FrmComandas();
                                comandas.Id_pedido = id_pedido;
                                comandas.AsignarTablas();

                                bool plato    = false;
                                bool bebida   = false;
                                int  imprimir = 0;
                                foreach (DataRow row in TablaDetallePedido.Rows)
                                {
                                    if (row["Tipo"].Equals("PLATO"))
                                    {
                                        plato = true;
                                    }
                                    else
                                    {
                                        bebida = true;
                                    }
                                    if (plato && bebida)
                                    {
                                        break;
                                    }
                                }

                                if (plato && bebida)
                                {
                                    imprimir = 2;
                                }
                                else
                                {
                                    imprimir = 1;
                                }

                                comandas.ImprimirFactura(imprimir);
                                this.Close();
                            }
                            else
                            {
                                throw new Exception(rpta);
                            }
                        }
                        else
                        {
                            Mensajes.MensajeErrorForm("Debe seleccionar como mínimo un plato o bebida");
                        }
                    }
                }
                hilo.Abort();
            }
            catch (Exception ex)
            {
                hilo.Abort();
                Mensajes.MensajeErrorCompleto(this.Name, "BtnTerminarPedido_Click",
                                              "Hubo un error al terminar un pedido", ex.Message);
            }
        }