Пример #1
0
        ////*******************************************************************************
        ///NOMBRE DE LA FUNCIÓN:
        ///DESCRIPCIÓN:
        ///PARAMETROS:
        ///CREO:       MARIA CHANTAL ORIGEL SEGURA
        ///FECHA_CREO:
        ///MODIFICO:
        ///FECHA_MODIFICO:
        ///CAUSA_MODIFICACIÓN:
        ///*******************************************************************************
        private void Imprimir_Ticket(Cls_Mdl_Ventas Reporte_Datos, List <Cls_Mdl_Ventas> Detalles, DataTable Parametros)
        {
            try
            {
                CrearTicket ticket = new CrearTicket();
                //ticket.Imprimir_Logo();
                ticket.TextoIzquierda(" ");
                ticket.TextoCentro("CAFETERIA");
                //ticket.TextoCentro("'NEUROLOGOS'");
                if (Parametros.Rows.Count > 0)
                {
                    //ticket.TextoCentro("" + Parametros.Rows[0]["Domicilio"]);
                    //ticket.TextoCentro("" + Parametros.Rows[0]["RFC"]);
                    //ticket.TextoCentro("TEL." + Parametros.Rows[0]["Telefono"]);
                }
                ticket.TextoIzquierda(" ");
                ticket.TextoDerecha("Folio: " + Reporte_Datos.Folio);
                ticket.TextoIzquierda(" ");
                ticket.TextoIzquierda("Fecha:" + Reporte_Datos.Fecha + "     " + Reporte_Datos.Dia);
                ticket.TextoIzquierda("");
                //ticket.TextoIzquierda("Cliente:" + Reporte_Datos.Cliente);
                //ticket.TextoIzquierda("");
                ticket.EncabezadoVenta();
                ticket.lineasGuio();
                var Cont = Detalles.Count();

                for (var i = 0; i < Cont; i++)
                {
                    ticket.AgregaArticulo(System.Convert.ToDecimal(Detalles[i].Cantidad.ToString()), Detalles[i].Descripcion.ToString(), System.Convert.ToDecimal(Detalles[i].Precio.ToString()), System.Convert.ToDecimal(Detalles[i].Importe.ToString()));
                }

                ticket.lineasIgual();
                ticket.AgregarTotales("          Subtotal : $ ", System.Convert.ToDecimal(Reporte_Datos.Subtotal));
                ticket.AgregarTotales("          IVA  : $ ", System.Convert.ToDecimal(Reporte_Datos.IVA));
                ticket.TextoIzquierda(" ");
                ticket.AgregarTotales("          TOTAL       : $ ", System.Convert.ToDecimal(Reporte_Datos.Total));
                ticket.TextoIzquierda(" ");
                ticket.TextoIzquierda("Este ticket forma parte de la factura");
                ticket.TextoIzquierda("global del dia ");
                ticket.TextoIzquierda(" ");
                ticket.TextoCentro("GRACIAS POR SU COMPRA");
                ticket.TextoCentro("VUELVA PRONTO");
                ticket.TextoIzquierda("");
                ticket.TextoIzquierda("");
                ticket.TextoIzquierda("");
                ticket.TextoIzquierda("");
                ticket.TextoIzquierda("");
                ticket.TextoIzquierda("");
                ticket.TextoIzquierda("");
                ticket.TextoIzquierda("");
                ticket.TextoIzquierda("");
                ticket.CortaTicket();
                ticket.ImprimirTicket("" + Parametros.Rows[0]["Impresora"]);
            }
            catch (Exception ex)
            {
                //throw new Exception(ex.Message);
            }
        }
 ////*******************************************************************************
 ///NOMBRE DE LA FUNCIÓN:
 ///DESCRIPCIÓN:
 ///PARAMETROS:
 ///CREO:       MARIA CHANTAL ORIGEL SEGURA
 ///FECHA_CREO:
 ///MODIFICO:
 ///FECHA_MODIFICO:
 ///CAUSA_MODIFICACIÓN:
 ///*******************************************************************************
 private void Imprimir_Ticket(Cls_Mdl_A_Pagar Reporte_Datos, DataTable Parametros)
 {
     try
     {
         CrearTicket ticket = new CrearTicket();
         //ticket.Imprimir_Logo();
         ticket.TextoIzquierda(" ");
         ticket.TextoCentro("JITOMATES");
         ticket.TextoCentro("'RIO GRANDE'");
         if (Parametros.Rows.Count > 0)
         {
             //ticket.TextoCentro("" + Parametros.Rows[0]["Domicilio"]);
             //ticket.TextoCentro("" + Parametros.Rows[0]["RFC"]);
             //ticket.TextoCentro("TEL." + Parametros.Rows[0]["Telefono"]);
         }
         ticket.TextoIzquierda(" ");
         ticket.TextoDerecha("Folio: " + Reporte_Datos.Folio);
         ticket.TextoIzquierda(" ");
         ticket.TextoIzquierda("Fecha:" + DateTime.Today);
         ticket.TextoIzquierda("");
         ticket.TextoIzquierda("Cliente:" + Reporte_Datos.Cliente);
         ticket.TextoIzquierda("");
         ticket.lineasGuio();
         if (Reporte_Datos.Estatus == "Abonar")
         {
             ticket.TextoIzquierda("ABONO: " + Reporte_Datos.Abonado);
         }
         if (Reporte_Datos.Estatus == "Pagado")
         {
             ticket.TextoIzquierda("PAGO: " + Reporte_Datos.Pagado);
         }
         ticket.lineasIgual();
         ticket.TextoIzquierda(" ");
         if (Reporte_Datos.Estatus == "Abonar")
         {
             ticket.AgregarTotales("          Le restan: $ ", System.Convert.ToDecimal(Reporte_Datos.Pagado) - System.Convert.ToDecimal(Reporte_Datos.Abonado));
         }
         ticket.TextoIzquierda(" ");
         ticket.TextoCentro("GRACIAS POR SU COMPRA");
         ticket.TextoCentro("VUELVA PRONTO");
         ticket.TextoIzquierda("");
         ticket.TextoIzquierda("");
         ticket.TextoIzquierda("");
         ticket.TextoIzquierda("");
         ticket.CortaTicket();
         ticket.ImprimirTicket("" + Parametros.Rows[0]["Impresora"]);
     }
     catch (Exception ex)
     {
         //throw new Exception(ex.Message);
     }
 }
 ////*******************************************************************************
 ///NOMBRE DE LA FUNCIÓN:
 ///DESCRIPCIÓN:
 ///PARAMETROS:
 ///CREO:       MARIA CHANTAL ORIGEL SEGURA
 ///FECHA_CREO:
 ///MODIFICO:
 ///FECHA_MODIFICO:
 ///CAUSA_MODIFICACIÓN:
 ///*******************************************************************************
 private void Imprimir_Recepcion_Caja(Cls_Mdl_A_Pagar Reporte_Datos, DataTable Parametros, DataTable Cajas_Pendientes)
 {
     try
     {
         CrearTicket ticket = new CrearTicket();
         //ticket.Imprimir_Logo();
         //ticket.HeaderImage = picturebox.image;
         ticket.TextoIzquierda(" ");
         ticket.TextoCentro("JITOMATES");
         ticket.TextoCentro("'RIO GRANDE'");
         if (Parametros.Rows.Count > 0)
         {
             //ticket.TextoCentro("" + Parametros.Rows[0]["Domicilio"]);
             //ticket.TextoCentro("" + Parametros.Rows[0]["RFC"]);
             //ticket.TextoCentro("TEL." + Parametros.Rows[0]["Telefono"]);
         }
         ticket.TextoIzquierda(" ");
         //ticket.TextoDerecha("Folio: " + Reporte_Datos.Folio);
         ticket.TextoIzquierda(" ");
         ticket.TextoIzquierda("Fecha:" + DateTime.Today);
         ticket.TextoIzquierda("");
         ticket.TextoIzquierda("Cliente:" + Reporte_Datos.Cliente);
         ticket.TextoIzquierda("");
         ticket.lineasGuio();
         ticket.TextoIzquierda("ENTREGO : " + Reporte_Datos.Cantidad + " CAJAS");
         ticket.TextoIzquierda("SE ENTREGÓ A CLIENTE :$" + Reporte_Datos.Importe + " DEL DEPOSITO");
         ticket.TextoIzquierda(" ");
         ticket.TextoIzquierda("CAJAS PENDIENTES : ");
         if (Cajas_Pendientes.Rows.Count > 0)
         {
             for (var j = 0; j < Cajas_Pendientes.Rows.Count; j++)
             {
                 ticket.TextoDerecha("" + Cajas_Pendientes.Rows[j]["Tipo_Caja"] + "    " + Cajas_Pendientes.Rows[j]["Cantidad"]);
             }
         }
         ticket.lineasIgual();
         ticket.TextoIzquierda(" ");
         ticket.TextoCentro("GRACIAS POR SU COMPRA");
         ticket.TextoCentro("VUELVA PRONTO");
         ticket.TextoIzquierda("");
         ticket.TextoIzquierda("");
         ticket.TextoIzquierda("");
         ticket.CortaTicket();
         ticket.ImprimirTicket("" + Parametros.Rows[0]["Impresora"]);
     }
     catch (Exception ex)
     {
         //throw new Exception(ex.Message);
     }
 }
        ////*******************************************************************************
        ///NOMBRE DE LA FUNCIÓN:
        ///DESCRIPCIÓN:
        ///PARAMETROS:
        ///CREO:       MARIA CHANTAL ORIGEL SEGURA
        ///FECHA_CREO:
        ///MODIFICO:
        ///FECHA_MODIFICO:
        ///CAUSA_MODIFICACIÓN:
        ///*******************************************************************************
        private void Imprimir_Ticket(Cls_Mdl_Ventas Reporte_Datos, List <Cls_Mdl_Ventas> Detalles, List <Cls_Mdl_Ventas> Cajas, DataTable Parametros)
        {
            try
            {
                for (int j = 0; j < 2; j++)
                {
                    CrearTicket ticket = new CrearTicket();
                    //ticket.Imprimir_Logo();
                    ticket.TextoIzquierda(" ");
                    ticket.TextoCentro("JITOMATES");
                    ticket.TextoCentro("'RIO GRANDE'");
                    if (Parametros.Rows.Count > 0)
                    {
                        //ticket.TextoCentro("" + Parametros.Rows[0]["Domicilio"]);
                        //ticket.TextoCentro("" + Parametros.Rows[0]["RFC"]);
                        //ticket.TextoCentro("TEL." + Parametros.Rows[0]["Telefono"]);
                    }
                    ticket.TextoIzquierda(" ");
                    ticket.TextoDerecha("Folio: " + Reporte_Datos.Folio);
                    ticket.TextoIzquierda(" ");
                    ticket.TextoIzquierda("Fecha:" + Reporte_Datos.Fecha + "     " + Reporte_Datos.Dia);
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("Cliente:" + Reporte_Datos.Cliente);
                    ticket.TextoIzquierda("");
                    ticket.EncabezadoVenta();
                    ticket.lineasGuio();
                    var Cont = Detalles.Count();

                    for (var i = 0; i < Cont; i++)
                    {
                        ticket.AgregaArticulo(System.Convert.ToDecimal(Detalles[i].Cantidad.ToString()), Detalles[i].Descripcion.ToString(), System.Convert.ToDecimal(Detalles[i].Costo_Unitario.ToString()), System.Convert.ToDecimal(Detalles[i].Importe.ToString()));
                    }

                    ticket.lineasIgual();
                    //ticket.AgregarTotales("          Subtotal : $ ", System.Convert.ToDecimal(Reporte_Datos.Subtotal));
                    //ticket.AgregarTotales("          IVA  : $ ", System.Convert.ToDecimal(Reporte_Datos.Precio_IVA));
                    ticket.TextoIzquierda(" ");
                    ticket.AgregarTotales("          TOTAL       : $ ", System.Convert.ToDecimal(Reporte_Datos.Total_Vendido));
                    ticket.TextoIzquierda(" ");
                    ticket.TextoIzquierda("Este ticket forma parte de la factura");
                    ticket.TextoIzquierda("global del dia ");
                    ticket.TextoIzquierda(" ");
                    ticket.TextoCentro("GRACIAS POR SU COMPRA");
                    ticket.TextoCentro("VUELVA PRONTO");
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("");
                    ticket.TextoIzquierda("");
                    ticket.CortaTicket();
                    ticket.ImprimirTicket("" + Parametros.Rows[0]["Impresora"]);

                    if (Cajas.Count > 0)
                    {
                        CrearTicket ticket_caja = new CrearTicket();
                        //ticket.Imprimir_Logo();
                        ticket_caja.TextoIzquierda(" ");
                        ticket_caja.TextoCentro("JITOMATES");
                        ticket_caja.TextoCentro("'RIO GRANDE'");
                        if (Parametros.Rows.Count > 0)
                        {
                            //ticket_caja.TextoCentro("" + Parametros.Rows[0]["Domicilio"]);
                            //ticket_caja.TextoCentro("" + Parametros.Rows[0]["RFC"]);
                            //ticket_caja.TextoCentro("TEL." + Parametros.Rows[0]["Telefono"]);
                        }
                        ticket_caja.TextoIzquierda(" ");
                        ticket_caja.TextoDerecha("Folio: " + Reporte_Datos.Folio);
                        ticket_caja.TextoIzquierda(" ");
                        ticket_caja.TextoIzquierda("Fecha:" + Reporte_Datos.Fecha + "     " + Reporte_Datos.Dia);
                        ticket_caja.TextoIzquierda("");
                        ticket_caja.TextoIzquierda("Cliente:" + Reporte_Datos.Cliente);
                        ticket_caja.TextoIzquierda("");
                        ticket_caja.EncabezadoVenta_cajas();
                        ticket_caja.lineasGuio();
                        var Con = Cajas.Count();

                        for (var i = 0; i < Con; i++)
                        {
                            ticket_caja.AgregaArticulo_Caja(System.Convert.ToDecimal(Cajas[i].Cajas_Cantidad.ToString()), Cajas[i].Cajas_Descripcion.ToString());
                        }

                        ticket_caja.lineasIgual();
                        //ticket_caja.AgregarTotales("          Subtotal : $ ", System.Convert.ToDecimal(Reporte_Datos.Subtotal));
                        //ticket_caja.AgregarTotales("          IVA  : $ ", System.Convert.ToDecimal(Reporte_Datos.Precio_IVA));
                        ticket_caja.TextoIzquierda(" ");
                        ticket_caja.AgregarTotales("          IMPORTE QUE DEJA       : $ ", System.Convert.ToDecimal(Reporte_Datos.Importe_Cajas));
                        ticket_caja.TextoIzquierda(" ");
                        ticket_caja.TextoCentro("VUELVA PRONTO");
                        ticket_caja.TextoIzquierda("");
                        ticket_caja.TextoIzquierda("");
                        ticket_caja.TextoIzquierda("");
                        ticket_caja.TextoIzquierda("");
                        ticket_caja.TextoIzquierda("");
                        ticket_caja.CortaTicket();
                        ticket_caja.ImprimirTicket("" + Parametros.Rows[0]["Impresora"]);
                    }
                }
            }
            catch (Exception ex)
            {
                //throw new Exception(ex.Message);
            }
        }
        private async void MethodGuardarVenta()
        {
            await Task.Factory.StartNew(() =>
            {
                try
                {
                    ESGR_Venta.CuentasXML = MethodCuentasXML();
                    ESGR_Venta.DetalleXML = MethodDetalleXML();
                    new BSGR_Venta().TransVenta(ESGR_Venta);

                    if (OpcionGuardado == "VR")
                    {
                        var CollectionMSGR_PedidoDetalle = new BSGR_PedidoDetalle().GetCollectionPedidoDetalle(ESGR_Venta.ESGR_Pedido);
                        #region REALIZA IMPRESION

                        CrearTicket ticket = new CrearTicket();
                        ticket.TextoCentro(SGRVariables.ESGR_Usuario.ESGR_Empresa.RazonSocial);
                        ticket.TextoIzquierda("RUC:   " + SGRVariables.ESGR_Usuario.ESGR_Empresa.Ruc);
                        ticket.TextoIzquierda("DIREC: " + SGRVariables.ESGR_Usuario.ESGR_Empresa.DireccionFiscal);
                        ticket.TextoIzquierda("TELEF: " + SGRVariables.ESGR_Usuario.ESGR_Empresa.Telefono);
                        ticket.TextoIzquierda("");
                        ticket.lineasIgual();
                        ticket.TextoIzquierda("");
                        ticket.TextoDerecha("Ticket #001-" + ESGR_Venta.ESGR_Pedido.IdPedido.ToString("00000#"));
                        ticket.TextoIzquierda(SGRVariables.ESGR_Usuario.ESGR_Perfil.NombrePerfil + ": " + SGRVariables.ESGR_Usuario.IdUsuario + " " + SGRVariables.ESGR_Usuario.Nombres);
                        ticket.TextoExtremos("Fecha: " + DateTime.Now.ToShortDateString(), "Hora: " + DateTime.Now.ToShortTimeString());
                        ticket.TextoExtremos("Mesa: " + ESGR_Venta.ESGR_Pedido.Identificador, "Personas: " + ESGR_Venta.ESGR_Pedido.Cubierto);
                        ticket.TextoIzquierda("");
                        ticket.lineasIgual();
                        ticket.TextoIzquierda("");
                        //Articulos a vender.
                        ticket.EncabezadoVenta();//NOMBRE DEL ARTICULO, CANT, PRECIO, IMPORTE
                        ticket.lineasGuion();
                        foreach (var item in CollectionMSGR_PedidoDetalle)
                        {
                            ticket.AgregaArticulo(item.ESGR_Producto.Producto, (int)item.Cantidad, (decimal)item.ESGR_Producto.Precio, ((int)item.Cantidad * (decimal)item.ESGR_Producto.Precio));
                        }
                        ticket.lineasGuion();
                        decimal Total = CollectionMSGR_PedidoDetalle.Sum(x => ((int)x.Cantidad * (decimal)x.ESGR_Producto.Precio));
                        ticket.AgregarTotales("         TOTAL S/", Total);
                        ticket.TextoIzquierda("");
                        ticket.TextoIzquierda("Razon Social:");
                        ticket.lineasSubGuion();
                        ticket.lineasSubGuion();
                        ticket.TextoIzquierda("RUC:");
                        ticket.lineasSubGuion();
                        ticket.TextoIzquierda("Direccion:");
                        ticket.lineasSubGuion();
                        ticket.lineasSubGuion();
                        ticket.TextoIzquierda("");
                        ticket.TextoCentro("¡ GRACIAS POR SU PREFERENCIA !");
                        ticket.TextoIzquierda("ESTE NO ES UN COMPROBANTE FISCAL CANJEAR POR BOLETA O FACTURA");

                        if (SGRVariables.NotificacionPreCuenta != null && SGRVariables.NotificacionPreCuenta.Trim().Length != 0)
                        {
                            ticket.TextoIzquierda("");
                            ticket.lineasAsteriscos();
                            ticket.TextoIzquierda("");
                            ticket.TextoIzquierda(SGRVariables.NotificacionPreCuenta);
                            ticket.TextoIzquierda("");
                        }

                        ticket.ImprimirTicket(SGRVariables.ImpresoraCaja);

                        #endregion
                    }

                    CmpMessageBox.Show(SGRMessage.AdministratorVenta, SGRMessageContent.ContentSaveOK, CmpButton.Aceptar, () => Volver(null));
                }
                catch (Exception ex)
                {
                    CmpMessageBox.Show(SGRMessage.AdministratorVenta, ex.Message, CmpButton.Aceptar);
                }
            });
        }
Пример #6
0
        private void button2_Click(object sender, EventArgs e)
        {
            if (!string.IsNullOrWhiteSpace(txtTicket.Text))
            {
                CrearTicket ticket = new CrearTicket();

                ConexBD cn1 = new ConexBD();
                cn1.Conectar();

                ticket.TextoCentro("LAVANDERIA SAN ISIDRO S.A");
                ticket.TextoIzquierda("");
                MySqlCommand _comando1 = new MySqlCommand(String.Format(
                                                              "SELECT o.idOrden,c.dniCliente,c.nombreCliente,o.fechaCreado,o.fechaEntrega, o.totalOrden,o.descuento,(l.total-o.`totalOrden`) dscto ,o.aplicaDscto,l.cantidad,l.precio,l.descripcion,l.total,l.colorPrenda,l.marca,l.defecto,p.pago1,p.pago2,u.direccion,u.telefono,u.impresora,p.tipoPago1,o.express,o.delivery FROM Orden o INNER JOIN Cliente c ON o.idCliente=c.idCliente INNER JOIN Pago p ON o.idOrden=p.idOrden INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN usuario u ON u.id=o.idUsuario WHERE o.idOrden={0}", txtTicket.Text), cn1.ObtenerConexion());
                ConexBD cn2 = new ConexBD();
                cn2.Conectar();
                MySqlCommand _comando = new MySqlCommand(String.Format(
                                                             "SELECT o.idOrden,c.dniCliente,c.nombreCliente,o.fechaCreado,o.fechaEntrega, o.totalOrden,l.cantidad,l.precio,l.descuento,l.descripcion,l.total,l.colorPrenda,l.marca,l.defecto,p.pago1,p.pago2,u.direccion,u.telefono,u.impresora,p.tipoPago1,o.garantia,o.express,o.delivery FROM Orden o INNER JOIN Cliente c ON o.idCliente=c.idCliente INNER JOIN Pago p ON o.idOrden=p.idOrden INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN usuario u ON u.id=o.idUsuario WHERE o.idOrden={0}", txtTicket.Text), cn2.ObtenerConexion());
                MySqlDataReader _reader1 = _comando1.ExecuteReader();
                MySqlDataReader _reader  = _comando.ExecuteReader();
                _reader1.Read();
                ticket.TextoIzquierda("DIRECCION: " + _reader1.GetString(18).ToUpper());
                ticket.TextoIzquierda("HORARIO: LUNES A VIERNES DE 8:00AM");
                ticket.TextoIzquierda(" A 8:00PM Y SABADO DE 8:00AM A 7:00PM");
                ticket.TextoIzquierda("TELEF: " + _reader1.GetString(19));
                ticket.TextoIzquierda("WEB:LAVANDERIASANISIDRO.COM");
                ticket.lineasIgual();
                ticket.TextoIzquierda("CLIENTE: " + _reader1.GetString(2).ToUpper());
                if (!_reader1.GetString(1).Equals(""))
                {
                    ticket.TextoIzquierda("DNI: " + _reader1.GetString(1));
                }
                ticket.TextoIzquierda("FECHA DE ORDEN: " + _reader1.GetString(3));
                ticket.TextoIzquierda("FECHA DE ENTREGA: " + _reader1.GetString(4).Substring(0, 10));
                ticket.TextoExtremos("NRO DE ORDEN:", "Ticket # " + _reader1.GetString(0));

                ticket.lineasAsteriscos();
                ticket.EncabezadoVenta();
                ticket.lineasAsteriscos();
                decimal totalSinDescuento = 0;
                decimal cargoVisa         = 0;

                if (_reader1.GetDecimal(21) == 1)
                {
                    cargoVisa = 5;
                }
                while (_reader.Read())
                {
                    ticket.AgregaArticulo(_reader.GetString(9), _reader.GetDecimal(6), _reader.GetDecimal(7), _reader.GetDecimal(10));
                    if (!_reader.GetString(11).Equals("") || !_reader.GetString(12).Equals("") || !_reader.GetString(13).Equals(""))
                    {
                        ticket.TextoExtremos(_reader.GetString(11) + " " + _reader.GetString(12), _reader.GetString(13));
                    }
                    if (_reader1.GetDecimal(8) > 0 && _reader.GetDecimal(8) > 0)
                    {
                        ticket.TextoExtremos("PROM DSCTO -" + _reader1.GetDecimal(6) + "%  ", " - " + (Decimal.Round(Decimal.Round((Convert.ToDecimal(_reader.GetDecimal(10))), 2) * _reader1.GetDecimal(6) / 100, 2)));
                    }
                    totalSinDescuento += _reader.GetDecimal(10);
                    ticket.lineasGuio();
                }

                ticket.lineasAsteriscos();

                if (_reader1.GetDecimal(6) > 0)
                {
                    if (_reader1.GetDecimal(8) > 0)
                    {
                        ticket.AgregarTotales("            TOTAL..........S/.", _reader.GetDecimal(14));
                    }
                    else
                    {
                        ticket.AgregarTotales("            TOTAL..........S/.", totalSinDescuento);
                    }

                    //  ticket.AgregarTotales("            DESCUENTO.." + (_reader1.GetDecimal(6) - cargoVisa) + "%.", (totalSinDescuento - _reader1.GetDecimal(5)));
                }
                else
                {
                    if (_reader1.GetDecimal(23) > 0)
                    {
                        ticket.TextoDerecha("              SERVICIO DELIVERY");
                    }
                    if (_reader1.GetDecimal(22) > 0)
                    {
                        ticket.TextoDerecha("              SERVICIO EXPRESS 50% +");
                    }
                    ticket.AgregarTotales("            TOTAL..........S/.", _reader.GetDecimal(5));
                }



                ticket.AgregarTotales("            A CUENTA.......S/.", _reader.GetDecimal(14));//La M indica que es un decimal en C#
                ticket.AgregarTotales("            SALDO..........S/.", _reader.GetDecimal(15));
                ticket.TextoIzquierda("");
                if (_reader.GetInt32(19) == 1)
                {
                    ticket.TextoCentro("Prendas sin garantía");
                }
                ticket.TextoCentro("¡GRACIAS POR SU PREFERENCIA!");
                ticket.CortaTicket();
                ticket.ImprimirTicket(_reader1.GetString(20));

                _comando.Connection.Close();
                _comando1.Connection.Close();
                cn1.cerrarConexion();
                cn2.cerrarConexion();
            }
            else
            {
                MessageBox.Show("Debe ingresar un Numero de Orden", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
 private void MethodImprimir(string Titulo)
 {
     try
     {
         var vrVentaMedioPago  = new BSGR_VentaCuenta().GetReportVentaMedioPago(ESGR_AperturaCierreCaja.ESGR_Caja.IdCaja);
         var vrVentaCategoria  = new BSGR_VentaDetalle().GetReportVentaCategoria(ESGR_AperturaCierreCaja.IdAperturaCierreCaja);
         var vrVentaPedidoTipo = new BSGR_VentaCuenta().GetReportVentaPedidoTipo(ESGR_AperturaCierreCaja.ESGR_Caja.IdCaja);
         var vrVentaFormaPago  = new BSGR_VentaCuenta().GetReportVentaFormaPago(ESGR_AperturaCierreCaja.ESGR_Caja.IdCaja);
         var vrMovimientoCaja  = new BSGR_MovimientoCaja().GetReportMovimientoCaja(ESGR_AperturaCierreCaja.ESGR_Caja.IdCaja);
         var vrTotalDescuentos = new BSGR_VentaCuenta().GetTotalAdicionalDescuentos(ESGR_AperturaCierreCaja.ESGR_Caja.IdCaja, "GetTotalDescuento");
         var vrTotalAdicional  = new BSGR_VentaCuenta().GetTotalAdicionalDescuentos(ESGR_AperturaCierreCaja.ESGR_Caja.IdCaja, "GetTotalAdicional");
         var vrTotalPorEstado  = new BSGR_Estado().GetReportCollectionEstado(ESGR_AperturaCierreCaja.ESGR_Caja.IdCaja);
         var vrTotalPorPedido  = new BSGR_Venta().GetTotalPorPedido(ESGR_AperturaCierreCaja.ESGR_Caja.IdCaja);
         Thread.Sleep(2000);
         CrearTicket ticket = new CrearTicket();
         ticket.TextoCentro(SGRVariables.ESGR_Usuario.ESGR_Empresa.RazonSocial);
         ticket.TextoIzquierda("RUC: " + SGRVariables.ESGR_Usuario.ESGR_Empresa.Ruc);
         ticket.TextoIzquierda(SGRVariables.ESGR_Usuario.ESGR_Empresa.DireccionFiscal);
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoCentro(Titulo.ToUpper());
         ticket.TextoIzquierda("Corte de " + ESGR_AperturaCierreCaja.ESGR_Caja.Descripcion);
         ticket.TextoIzquierda("DEL " + ESGR_AperturaCierreCaja.FechaApertura.ToString().ToUpper());
         ticket.TextoIzquierda(" AL " + ESGR_AperturaCierreCaja.FechaCierre.ToString().ToUpper());
         ticket.lineasIgual();
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoCentro(ESGR_AperturaCierreCaja.ESGR_Caja.Descripcion);
         decimal dmlSaldoFinal = 0;
         vrVentaMedioPago.ToList().ForEach(x =>
         {
             ticket.TextoTriple("+ " + x.ESGR_MedioPago.MedioPago, ": " + x.ESGR_Moneda.Simbolo, x.Total.ToString("N3"));
             dmlSaldoFinal += x.Total;
         });
         vrMovimientoCaja.ToList().ForEach(x =>
         {
             ticket.TextoTriple(((x.ESGR_Motivo.Campo.Trim() == "ING") ? "+ " : "- ") + x.ESGR_Motivo.Motivo, ": " + x.ESGR_Moneda.Simbolo, x.Total.ToString("N3"));
             dmlSaldoFinal += ((x.ESGR_Motivo.Campo.Trim() == "ING") ? x.Total : (-1) * x.Total);
         });
         ticket.TextoExtremosAlineados(string.Empty, "________________");
         ticket.TextoTriple("=  SALDO FINAL", ": " + vrMovimientoCaja.FirstOrDefault().ESGR_Moneda.Simbolo, dmlSaldoFinal.ToString("N3"));
         ticket.TextoTriple("EFECTIVO FINAL", ": " + ColletionMDSGR_AperturaCajaDetalle.FirstOrDefault().SelectedESGR_Moneda.Simbolo, ColletionMDSGR_AperturaCajaDetalle.Sum(x => x.Monto_Cierre).ToString("N3"));
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoCentro("FORMA DE PAGO VENTA");
         vrVentaFormaPago.ToList().ForEach(x => ticket.TextoTriple(x.ESGR_MedioPago.ESGR_FormaPago.FormaPago, ": " + x.ESGR_Moneda.Simbolo, x.Total.ToString("N3")));
         ticket.TextoIzquierda(string.Empty);
         ticket.lineasIgual();
         ticket.TextoCentro("VENTAS (INCLUYE IMPUESTO)");
         ticket.TextoCentro("POR CATEGORIA");
         vrVentaCategoria.ToList().ForEach(x =>
         {
             ticket.TextoTriple(x.ESGR_Producto.ESGR_ProductoSubCategoria.ESGR_ProductoCategoria.Categoria, ": " + x.ESGR_VentaCuenta.ESGR_Moneda.Simbolo, x.Importe.ToString("N3"));
         });
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoCentro("POR TIPO DE SERVICIO");
         decimal dmlSubTotal = 0;
         vrVentaPedidoTipo.ToList().ForEach(x =>
         {
             ticket.TextoTriple(x.ESGR_Venta.ESGR_Pedido.ESGR_PedidoTipo.PedidoTipo, ": " + x.ESGR_Moneda.Simbolo, x.Total.ToString("N3"));
             dmlSubTotal += x.Total;
         });
         ticket.TextoExtremosAlineados(string.Empty, "________________");
         string strSimbolo = vrVentaPedidoTipo.FirstOrDefault().ESGR_Moneda.Simbolo;
         ticket.TextoTriple(" SUBTOTAL", ": " + strSimbolo, dmlSubTotal.ToString("N3"));
         ticket.TextoTriple("+ADICIONAL", ": " + strSimbolo, vrTotalAdicional.ToString("N3"));
         ticket.TextoTriple("-DESCUENTOS", ": " + strSimbolo, vrTotalDescuentos.ToString("N3"));
         decimal dmlVentaNeta = (dmlSubTotal - vrTotalDescuentos + vrTotalAdicional);
         ticket.TextoTriple(" VENTA NETA", ": " + strSimbolo, dmlVentaNeta.ToString("N3"));
         ticket.TextoExtremosAlineados(string.Empty, "________________");
         dmlVentaNeta = dmlVentaNeta / ((SGRVariables.ESGR_Retencion.IGV / 100) + 1);
         ticket.TextoTriple("VENTA     (" + SGRVariables.ESGR_Retencion.IGV.ToString("N2") + "%)", ": " + strSimbolo, dmlVentaNeta.ToString("N3"));
         decimal dmlImpuesto = dmlVentaNeta * (SGRVariables.ESGR_Retencion.IGV / 100);
         ticket.TextoTriple("IMPUESTO  (" + SGRVariables.ESGR_Retencion.IGV.ToString("N2") + "%)", ": " + strSimbolo, dmlImpuesto.ToString("N3"));
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoTriple("IMPUESTO TOTAL", ": " + strSimbolo, dmlImpuesto.ToString("N3"));
         ticket.TextoExtremosAlineados(string.Empty, "________________");
         ticket.TextoTriple("VENTA CON IMP.", ": " + strSimbolo, (dmlVentaNeta + dmlImpuesto).ToString("N3"));
         ticket.TextoExtremosAlineados(string.Empty, "================");
         ticket.TextoIzquierda(string.Empty);
         ticket.lineasIgual();
         #region OPCIONAL
         //ticket.TextoExtremosAliniados("CUENTAS NORMALES", ": 0");
         //ticket.TextoExtremosAliniados("CUENTAS CANCELADOS", ": 0");
         //ticket.TextoExtremosAliniados("CUENTAS CON DESCUENTO", ": 0");
         //ticket.TextoExtremosAliniados("CUENTAS CON CORTESIA", ": 0");
         //ticket.TextoExtremosAliniados("CUENTA PROMEDIO", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("CONSUMO PROMEDIO", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("COMENSALES", ": 0");
         //ticket.TextoExtremosAliniados("PROPINAS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("CARGOS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("DESCUENTO MONEDERO", ": S/. 0.000");
         //ticket.TextoExtremos("FOLIO INICIAL", "828");
         //ticket.TextoExtremos("FOLIO FINAL", "890");
         //ticket.TextoExtremosAliniados("CORTESIA ALIMENTOS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("CORTESIA BEBIDAS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("CORTESIA OTROS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados(string.Empty, "________________");
         //ticket.TextoExtremosAliniados("TOTAL CORTESIAS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("DESCUENTO ALIMENTOS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("DESCUENTO BEBIDAS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados("DESCUENTO OTROS", ": S/. 0.000");
         //ticket.TextoExtremosAliniados(string.Empty, "________________");
         //ticket.TextoExtremosAliniados("TOTAL DESCUENTOS", ": S/. 0.000");
         #endregion
         ticket.TextoCentro("REPORTE DE PEDIDOS");
         ticket.lineasAsteriscos();
         ticket.TextoTriple("FOLIO INICIAL", ": ", vrTotalPorPedido.FirstOrDefault().ESGR_Pedido.IdPedido.ToString("00000#"));
         ticket.TextoTriple("FOLIO FINAL", ": ", vrTotalPorPedido.LastOrDefault().ESGR_Pedido.IdPedido.ToString("00000#"));
         ticket.TextoTriple("COMENSALES APROX.", ": ", vrTotalPorPedido.Sum(x => x.ESGR_Pedido.Cubierto).ToString("00#"));
         vrTotalPorEstado.ToList().ForEach(x => ticket.TextoTriple(x.Estado, ": ", x.Total.ToString("00#")));
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoCentro("DECLARACION DE CAJERO");
         decimal dmlTotalCajero = 0;
         ColletionMDSGR_AperturaCajaDetalle.FirstOrDefault().CollectionESGR_MedioPago.ToList().ForEach(x =>
         {
             var dml = ColletionMDSGR_AperturaCajaDetalle.FirstOrDefault(y => y.SelectedESGR_MedioPago.IdMedioPago == x.IdMedioPago);
             ticket.TextoTriple(x.MedioPago, ": " + strSimbolo, ((dml == null) ? "0.000" : dml.Monto_Cierre.ToString("N3")));
             dmlTotalCajero += (dml == null) ? 0 : dml.Monto_Cierre;
         });
         ticket.TextoExtremosAlineados(string.Empty, "________________");
         ticket.TextoTriple("TOTAL", ": " + strSimbolo, dmlTotalCajero.ToString("N3"));
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoIzquierda("SOBRANTE(+) O FALTANTE(-): ");
         decimal dmlCierre = dmlTotalCajero - (dmlVentaNeta + dmlImpuesto);
         ticket.TextoDerecha(strSimbolo + " " + ((dmlCierre < 0) ? string.Empty : "+") + dmlCierre.ToString("N3"));
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoExtremosAlineados("_________________", "_________________");
         ticket.TextoExtremosAlineados("     GERENTE", "     CAJERO");
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoIzquierda(string.Empty);
         ticket.TextoCentro(SGRMessage.TitleMessage.ToUpper());
         ticket.TextoIzquierda(string.Empty);
         //Application.Current.Dispatcher.Invoke(() =>
         //{
         ticket.ImprimirTicket(SGRVariables.ImpresoraCaja);
         //});
     }
     catch (Exception)
     {
         throw;
     }
 }