Exemplo n.º 1
0
        //FUNCION PARA CARGAR LAS CUENTAS
        private void cargarComandas()
        {
            try
            {
                if (this.InvokeRequired)
                {
                    mostrarBotonesDelegado delegado = new mostrarBotonesDelegado(cargarComandas);
                    this.Invoke(delegado);
                }

                else
                {
                    sSql  = "";
                    sSql += "select * from pos_vw_comandas_creadas" + Environment.NewLine;
                    sSql += "where fecha_pedido = '" + sFechaActual + "'" + Environment.NewLine;
                    sSql += "and id_localidad = " + cmbLocalidades.SelectedValue + Environment.NewLine;

                    if (iOp == 1)
                    {
                        sSql += "and codigo = '" + sCodigo_P + "'" + Environment.NewLine;
                    }

                    else if (iOp == 2)
                    {
                        sSql += "and numero_pedido = '" + txtBusqueda.Text.Trim() + "'" + Environment.NewLine;
                    }

                    else if (iOp == 3)
                    {
                        sSql += "and cuenta = '" + txtBusqueda.Text.Trim() + "'" + Environment.NewLine;
                    }

                    sSql += "order by numero_pedido desc, cuenta" + Environment.NewLine;

                    dtComandas = new DataTable();
                    dtComandas.Clear();

                    bRespuesta = conexion.GFun_Lo_Busca_Registro(dtComandas, sSql);

                    if (bRespuesta == false)
                    {
                        catchMensaje.LblMensaje.Text = "ERROR EN LA SIGUIENTE INSTRUCCIÓN:" + Environment.NewLine + sSql;
                        catchMensaje.ShowDialog();
                        return;
                    }

                    iCuentaComandas = 0;

                    if (dtComandas.Rows.Count == 0)
                    {
                        btnSubirComandas.Visible = false;
                        btnBajarComandas.Visible = false;
                        return;
                    }

                    if (dtComandas.Rows.Count > 4)
                    {
                        btnSubirComandas.Visible = true;
                        btnBajarComandas.Visible = true;
                        btnBajarComandas.Enabled = true;
                        btnSubirComandas.Enabled = false;
                    }

                    else
                    {
                        btnSubirComandas.Visible = false;
                        btnBajarComandas.Visible = false;
                        btnBajarComandas.Enabled = false;
                    }

                    if (crearBotones() == false)
                    {
                        ok.LblMensaje.Text = "No se pudo crear los botones de las comandas.";
                        ok.ShowDialog();
                    }
                }
            }

            catch (Exception ex)
            {
                catchMensaje.LblMensaje.Text = ex.Message;
                catchMensaje.ShowDialog();
            }
        }
Exemplo n.º 2
0
        private void mostrarBotones()
        {
            try
            {
                if (this.InvokeRequired)
                {
                    mostrarBotonesDelegado delegado = new mostrarBotonesDelegado(mostrarBotones);
                    this.Invoke(delegado);
                }

                else
                {
                    contarOrdenesCreadas();

                    int h             = 1;
                    int controlBoton1 = 1;
                    iCuenta = 0;
                    //pnlOrdenes.Controls.Clear();
                    iCoordenadaX = 0;
                    iCoordenadaY = 0;

                    //INSTRUCCIONES SQL UTILIZADAS EN EL FORMULARIO
                    //EXTRAMOS LOS REGISTROS DEL DIA CON LA JORNADA INGRESADA

                    //EXTRAMOS LOS REGISTROS DEL DIA CON LA JORNADA INGRESADA

                    sSql  = "";
                    sSql += "select CP.id_pedido, NP.numero_pedido, isnull(CP.id_pos_mesa,0) id_pos_mesa," + Environment.NewLine;
                    sSql += "isnull(M.descripcion,'NINGUNA') descripcion, C.descripcion, O.descripcion," + Environment.NewLine;
                    sSql += "CP.fecha_apertura_orden, CP.estado_orden, CP.numero_personas, CP.cuenta," + Environment.NewLine;
                    sSql += "MES.descripcion, CP.fecha_orden, CP.id_pos_jornada" + Environment.NewLine;
                    sSql += "from cv403_cab_pedidos as CP inner join" + Environment.NewLine;
                    sSql += "pos_origen_orden as O on O.id_pos_origen_orden = CP.id_pos_origen_orden" + Environment.NewLine;
                    sSql += "and CP.estado in ('A', 'N')" + Environment.NewLine;
                    sSql += "and O.estado = 'A'inner join" + Environment.NewLine;
                    sSql += "cv403_numero_cab_pedido as NP on NP.id_pedido = CP.id_pedido" + Environment.NewLine;
                    sSql += "and NP.estado = 'A' left outer join" + Environment.NewLine;
                    sSql += "pos_mesa as M on M.id_pos_mesa = CP.id_pos_mesa" + Environment.NewLine;
                    sSql += "and M.estado = 'A' inner join" + Environment.NewLine;
                    sSql += "pos_cajero as C on C.id_pos_cajero = CP.id_pos_cajero" + Environment.NewLine;
                    sSql += "and C.estado = 'A' inner join" + Environment.NewLine;
                    sSql += "pos_mesero as MES on MES.id_pos_mesero = CP.id_pos_mesero" + Environment.NewLine;
                    sSql += "and MES.estado = 'A'" + Environment.NewLine;
                    sSql += "where CP.fecha_orden = '" + sFechaActual + "'" + Environment.NewLine;
                    sSql += "and CP.id_localidad = " + Program.iIdLocalidad + Environment.NewLine;

                    if (iOp == 2)
                    {
                        sSql += "and CP.estado_orden in ('Abierta', 'Pre-Cuenta')" + Environment.NewLine;
                    }

                    else if (iOp == 3)
                    {
                        sSql += "and NP.numero_pedido = " + Convert.ToInt32(txtBusqueda.Text.Trim()) + Environment.NewLine;
                    }

                    else if (iOp == 4)
                    {
                        sSql += "and O.id_pos_origen_orden = 3" + Environment.NewLine;
                    }

                    else if (iOp == 5)
                    {
                        sSql += "and O.id_pos_origen_orden = 1" + Environment.NewLine;
                    }

                    else if (iOp == 6)
                    {
                        sSql += "and O.id_pos_origen_orden = 2" + Environment.NewLine;
                    }

                    else if (iOp == 7)
                    {
                        sSql += "and CP.cuenta = " + Convert.ToInt32(txtBusqueda.Text.Trim()) + Environment.NewLine;
                    }

                    else if (iOp == 8)
                    {
                        sSql += "and CP.estado ='N'" + Environment.NewLine;
                    }

                    sSql += "order by CP.id_pedido desc";


                    dtConsulta = new DataTable();
                    bRespuesta = conexion.GFun_Lo_Busca_Registro(dtConsulta, sSql);

                    if (bRespuesta == true)
                    {
                        if (dtConsulta.Rows.Count > 0)
                        {
                            iCuenta = dtConsulta.Rows.Count;

                            Button[] boton       = new Button[iCuenta];
                            Button[] boton1      = new Button[iCuenta];
                            Button[] botonEditar = new Button[iCuenta];

                            //btnTotalOrdenes.Text = "Total de Órdenes \n" + iCuenta;

                            for (int i = 0; i < iCuenta; i++)
                            {
                                //DATOS CARGADOS EN EL DATATABLE RECUPERADO DE LA BASE DE DATOS
                                //USAREMOS VARIABLES PARA QUE EVITAR COLOCAR EL NOMBRE DE TODA LA INSTRUCCIÒN DEL DATATABLE
                                //==========================================================================================================

                                //POSICIÒN 0 = orden.id_pedido
                                iIdPedido = Convert.ToInt32(dtConsulta.Rows[i][0].ToString());
                                //POSICION 1 = numero_pedido
                                iNumeroPedido = Convert.ToInt32(dtConsulta.Rows[i][1].ToString());
                                //POSICION 2 = id_pos_mesa
                                iIdPosMesa = dtConsulta.Rows[i][2].ToString();
                                //POSICION 3 = mesa.descripcion
                                sNombreMesa = dtConsulta.Rows[i][3].ToString();
                                //POSICION 4 = nombre del cajero
                                sNombreCajero = dtConsulta.Rows[i][4].ToString();
                                //POSICION 5 = tipo de orden
                                sTipoOrden = dtConsulta.Rows[i][5].ToString();
                                //POSICION 6 = fecha de apertura de la orden
                                sFechaIngresoOrden = dtConsulta.Rows[i][6].ToString();
                                //POSICION 7 = orden.estado_orden
                                sEstadoOrden = dtConsulta.Rows[i][7].ToString();
                                //POSICION 8 = mesa.descripcion
                                iNumeroPersonas = Convert.ToInt32(dtConsulta.Rows[i][8].ToString());
                                //POSICION 9 = cuenta diarias
                                iNumeroCuentaDiaria = Convert.ToInt32(dtConsulta.Rows[i][9].ToString());
                                //POSICION 10 = nombre del mesero
                                sNombreMesero = dtConsulta.Rows[i][10].ToString();
                                //POSICION 11 = fecha_orden comanda
                                sFechaOrdenComanda = dtConsulta.Rows[i][11].ToString();

                                //==========================================================================================================

                                boton[i]            = new Button();
                                boton[i].Name       = iIdPedido.ToString();
                                boton[i].Click     += boton_clic;
                                boton[i].Size       = new Size(700, 100);
                                boton[i].Location   = new Point(iCoordenadaX, iCoordenadaY);
                                boton[i].Text       = "" + h;
                                boton[i].Font       = new Font("Maiandra GD", 11);
                                boton[i].BackColor  = Color.FromArgb(255, 224, 192);
                                boton[i].Image      = Palatium.Properties.Resources.comanda_revisar;
                                boton[i].ImageAlign = ContentAlignment.MiddleLeft;

                                iCoordenadaX += 701;

                                botonEditar[i]                       = new Button();
                                botonEditar[i].Name                  = iIdPedido.ToString();
                                botonEditar[i].Click                += botonEditar_Click;
                                botonEditar[i].Image                 = Palatium.Properties.Resources.editar_comanda_revisar;
                                botonEditar[i].ImageAlign            = ContentAlignment.TopCenter;
                                botonEditar[i].Size                  = new Size(95, 100);
                                botonEditar[i].Location              = new Point(iCoordenadaX, iCoordenadaY);
                                botonEditar[i].Font                  = new Font("Maiandra GD", 11);
                                botonEditar[i].TextAlign             = ContentAlignment.BottomCenter;
                                botonEditar[i].BackColor             = Color.FromArgb(192, 192, 255);
                                botonEditar[i].AccessibleName        = sEstadoOrden.ToUpper();
                                botonEditar[i].AccessibleDescription = sFechaOrdenComanda.ToUpper();

                                if ((sEstadoOrden.ToUpper()) == "PAGADA" || (sEstadoOrden.ToUpper() == "CERRADA"))
                                {
                                    botonEditar[i].Text = "Reabrir" + Environment.NewLine + "Comanda";
                                    botonEditar[i].Tag  = 1;
                                }

                                if (sEstadoOrden.ToUpper() == "CANCELADA")
                                {
                                    botonEditar[i].Text = "Reabrir" + Environment.NewLine + "Comanda";
                                    botonEditar[i].Tag  = 3;
                                }

                                else if ((sEstadoOrden.ToUpper() == "ABIERTA") || (sEstadoOrden.ToUpper() == "PRE-CUENTA"))
                                {
                                    botonEditar[i].Text = "Editar" + Environment.NewLine + "Comanda";
                                    botonEditar[i].Tag  = 2;
                                }

                                iCoordenadaX += 95;

                                boton1[i]            = new Button();
                                boton1[i].Name       = iIdPedido.ToString();
                                boton1[i].Click     += botonImprimir_clic;
                                boton1[i].Image      = Palatium.Properties.Resources.impresora_icono;
                                boton1[i].ImageAlign = ContentAlignment.TopCenter;
                                boton1[i].Size       = new Size(95, 100);
                                boton1[i].Location   = new Point(iCoordenadaX, iCoordenadaY);
                                boton1[i].Font       = new Font("Maiandra GD", 11);
                                boton1[i].Text       = "Imprimir" + Environment.NewLine + "Precuenta";
                                boton1[i].TextAlign  = ContentAlignment.BottomCenter;
                                boton1[i].BackColor  = Color.FromArgb(192, 255, 255);
                                controlBoton1++;

                                iCoordenadaX  = 0;
                                iCoordenadaY += 102;

                                //Función para verificar el número de mesas
                                //contarNumeroCuentas(i);

                                for (int j = 1; j <= iCuenta; j++)
                                {
                                    if (boton[i].Text == j.ToString())
                                    {
                                        //domicilio /llevar
                                        string t_st_linea1 = "";
                                        string t_st_linea2 = "";
                                        string t_st_linea3 = "";
                                        string t_st_linea4 = "";
                                        string t_st_linea5 = "";
                                        string t_st_linea6 = "";
                                        string t_st_linea7 = "";
                                        string t_st_linea8 = "";
                                        string t_st_linea9 = "";

                                        int iBandera = 0;

                                        if (dtConsulta.Rows[0][5].ToString() == "Pre-Cuenta")
                                        {
                                            //Program.Orden[j][8] = "Abierta";
                                            iBandera = 1;
                                        }

                                        //INSTRUCCIONES PARA SUMAR EL VALOR DEL DETALLE DE LA ORDEN
                                        //UTILIZAREMOS EL DATATABLE DE  LA INSTRUCCION DE LA MESA
                                        dtConsultaMesa = new DataTable();
                                        dtConsultaMesa.Clear();

                                        sSql  = "";
                                        sSql += "select DP.cantidad, DP.precio_unitario, DP.valor_dscto, DP.valor_iva, DP.valor_otro" + Environment.NewLine;
                                        sSql += "from cv403_det_pedidos as DP, cv403_cab_pedidos as CP" + Environment.NewLine;
                                        sSql += "where CP.id_pedido = DP.id_pedido" + Environment.NewLine;
                                        sSql += "and CP.id_pedido = " + iIdPedido + Environment.NewLine;
                                        sSql += "and CP.estado in ('A', 'N')" + Environment.NewLine;
                                        sSql += "and DP.estado = 'A'";

                                        bRespuesta = conexion.GFun_Lo_Busca_Registro(dtConsultaMesa, sSql);

                                        if (bRespuesta == true)
                                        {
                                            DSumaDetalleOrden = 0;

                                            for (int k = 0; k < dtConsultaMesa.Rows.Count; k++)
                                            {
                                                dbCantidad       = Convert.ToDouble(dtConsultaMesa.Rows[k][0].ToString());
                                                dbPrecioUnitario = Convert.ToDouble(dtConsultaMesa.Rows[k][1].ToString());
                                                dbDescuento      = Convert.ToDouble(dtConsultaMesa.Rows[k][2].ToString());
                                                dbIva            = Convert.ToDouble(dtConsultaMesa.Rows[k][3].ToString());
                                                dbServicio       = Convert.ToDouble(dtConsultaMesa.Rows[k][4].ToString());

                                                dbPrecioUnitario = dbCantidad * dbPrecioUnitario;
                                                dbDescuento      = dbCantidad * dbDescuento;
                                                dbIva            = dbCantidad * dbIva;

                                                if (Program.iManejaServicio == 1)
                                                {
                                                    if (dbCantidad >= 1)
                                                    {
                                                        dbServicio = dbCantidad * dbServicio;
                                                    }
                                                }

                                                DSumaDetalleOrden = DSumaDetalleOrden + dbPrecioUnitario + dbIva + dbServicio - dbDescuento;
                                            }
                                        }

                                        //Mesa
                                        t_st_linea1 = "Número de Cuenta: " + iNumeroCuentaDiaria.ToString() + "   Número de Orden: " + (iNumeroPedido).ToString() + "  Mesero: " + sNombreMesero + "      Total: " + "$ " + DSumaDetalleOrden.ToString("N2");
                                        t_st_linea2 = "Fecha y Hora de la Orden: " + sFechaIngresoOrden;
                                        t_st_linea3 = sTipoOrden + " # : " + sNombreMesa + " -  Nº de Personas: " + iNumeroPersonas.ToString() + "\n Orden " + sEstadoOrden;

                                        //A domicilio
                                        t_st_linea4 = "Número de Cuenta: " + iNumeroCuentaDiaria.ToString() + "   Número de Orden: " + (iNumeroPedido).ToString() + "  Mesero: " + sNombreMesero + "      Total: " + "$ " + DSumaDetalleOrden.ToString("N2");
                                        t_st_linea5 = "Fecha y Hora de la Orden: " + sFechaIngresoOrden;
                                        t_st_linea6 = sTipoOrden + " - QUITO - ECUADOR" + "\n Orden " + sEstadoOrden;

                                        //Para llevar

                                        t_st_linea7 = "Número de Cuenta: " + iNumeroCuentaDiaria.ToString() + "   Número de Orden: " + (iNumeroPedido).ToString() + "  Mesero: " + sNombreMesero + "      Total: " + "$ " + DSumaDetalleOrden.ToString("N2");
                                        t_st_linea8 = "Fecha y Hora de la Orden: " + sFechaIngresoOrden;
                                        t_st_linea9 = sTipoOrden + "\n Orden " + sEstadoOrden;

                                        if (sTipoOrden == "MESAS")
                                        {
                                            boton[i].Text = t_st_linea1 + "\n" + t_st_linea2 + "\n" + t_st_linea3;
                                        }

                                        else if (sTipoOrden == "DOMICILIOS")
                                        {
                                            boton[i].Text = t_st_linea4 + "\n" + t_st_linea5 + "\n" + t_st_linea6;
                                        }

                                        else if (sTipoOrden == "PARA LLEVAR")
                                        {
                                            boton[i].Text = t_st_linea7 + "\n" + t_st_linea8 + "\n" + t_st_linea9;
                                        }

                                        else
                                        {
                                            boton[i].Text = t_st_linea7 + "\n" + t_st_linea8 + "\n" + t_st_linea9;
                                        }
                                    }
                                }

                                pnlOrdenes.Controls.Add(boton1[i]);
                                pnlOrdenes.Controls.Add(botonEditar[i]);
                                pnlOrdenes.Controls.Add(boton[i]);
                                h++;
                            }
                        }

                        else
                        {
                            //SE PUEDE OMITIR RELLENAR ESTA LINEA YA QUE NO DEVUELVE INFORMACION
                            //btnTotalOrdenes.Text = "Total de Órdenes \n0";
                        }
                    }

                    else
                    {
                        catchMensaje.LblMensaje.Text = sSql;
                        catchMensaje.ShowDialog();
                    }
                }
            }

            catch (Exception ex)
            {
                catchMensaje.LblMensaje.Text = ex.ToString();
                catchMensaje.ShowDialog();
            }
        }
Exemplo n.º 3
0
        //FUNCION PARA CONSULTAR LAS COMANDAS
        private void cargarComandas()
        {
            try
            {
                if (this.InvokeRequired)
                {
                    mostrarBotonesDelegado delegado = new mostrarBotonesDelegado(cargarComandas);
                    this.Invoke(delegado);
                }

                else
                {
                    sSql  = "";
                    sSql += "select * from pos_vw_revisar_comandas" + Environment.NewLine;
                    sSql += "where fecha_pedido = '" + sFechaActual + "'" + Environment.NewLine;
                    sSql += "and id_localidad = " + cmbLocalidades.SelectedValue + Environment.NewLine;

                    if (iOp == 2)
                    {
                        sSql += "and estado_orden in ('Abierta', 'Pre-Cuenta')" + Environment.NewLine;
                    }

                    else if (iOp == 3)
                    {
                        sSql += "and numero_pedido = " + Convert.ToInt32(txtBusqueda.Text.Trim()) + Environment.NewLine;
                    }

                    else if (iOp == 4)
                    {
                        sSql += "and codigo = '03'" + Environment.NewLine;
                    }

                    else if (iOp == 5)
                    {
                        sSql += "and codigo = '01'" + Environment.NewLine;
                    }

                    else if (iOp == 6)
                    {
                        sSql += "and codigo = '02'" + Environment.NewLine;
                    }

                    else if (iOp == 7)
                    {
                        sSql += "and cuenta = " + Convert.ToInt32(txtBusqueda.Text.Trim()) + Environment.NewLine;
                    }

                    else if (iOp == 8)
                    {
                        sSql += "and estado ='N'" + Environment.NewLine;
                    }

                    sSql += "order by id_pedido desc";

                    dtComandas = new DataTable();
                    dtComandas.Clear();

                    bRespuesta = conexion.GFun_Lo_Busca_Registro(dtComandas, sSql);

                    if (bRespuesta == false)
                    {
                        catchMensaje = new VentanasMensajes.frmMensajeCatch();
                        catchMensaje.LblMensaje.Text = "ERROR EN LA SIGUIENTE INSTRUCCIÓN:" + Environment.NewLine + sSql;
                        catchMensaje.ShowDialog();
                        return;
                    }

                    iCuentaComandas = 0;

                    if (dtComandas.Rows.Count == 0)
                    {
                        btnSubirComandas.Visible = false;
                        btnBajarComandas.Visible = false;
                        return;
                    }

                    if (dtComandas.Rows.Count > 4)
                    {
                        btnSubirComandas.Visible = true;
                        btnBajarComandas.Visible = true;
                        btnBajarComandas.Enabled = true;
                        btnSubirComandas.Enabled = false;
                    }

                    else
                    {
                        btnSubirComandas.Visible = false;
                        btnBajarComandas.Visible = false;
                        btnBajarComandas.Enabled = false;
                    }

                    if (crearBotones() == false)
                    {
                        ok = new VentanasMensajes.frmMensajeOK();
                        ok.LblMensaje.Text = "No se pudo crear los botones de las comandas.";
                        ok.ShowDialog();
                    }
                }
            }

            catch (Exception ex)
            {
                catchMensaje = new VentanasMensajes.frmMensajeCatch();
                catchMensaje.LblMensaje.Text = ex.Message;
                catchMensaje.ShowDialog();
            }
        }