////******************************************************************************* ///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); } }); }
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; } }