diff --git a/Estadiscticas.Designer.cs b/Estadiscticas.Designer.cs
index 5835f2e..7935ac4 100644
--- a/Estadiscticas.Designer.cs
+++ b/Estadiscticas.Designer.cs
@@ -294,7 +294,7 @@
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(104)))), ((int)(((byte)(255)))));
this.BackgroundImage = global::compabetov2.Properties.Resources.Form;
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
- this.ClientSize = new System.Drawing.Size(1147, 758);
+ this.ClientSize = new System.Drawing.Size(1273, 867);
this.ControlBox = false;
this.Controls.Add(this.pictureBox2);
this.Controls.Add(this.lbVendedorMes);
diff --git a/Estadiscticas.resx b/Estadiscticas.resx
index 61e5f8b..3d753bc 100644
--- a/Estadiscticas.resx
+++ b/Estadiscticas.resx
@@ -129,30 +129,6 @@
True
-
- True
-
-
- True
-
-
- True
-
-
- True
-
-
- True
-
-
- True
-
-
- True
-
-
- True
-
True
diff --git a/Ventas/datosEnvio.Designer.cs b/Ventas/datosEnvio.Designer.cs
index 7453b2b..c0afc54 100644
--- a/Ventas/datosEnvio.Designer.cs
+++ b/Ventas/datosEnvio.Designer.cs
@@ -41,63 +41,76 @@
// label1
//
this.label1.AutoSize = true;
- this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label1.Location = new System.Drawing.Point(22, 25);
+ this.label1.BackColor = System.Drawing.Color.Transparent;
+ this.label1.Font = new System.Drawing.Font("Poppins", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.label1.ForeColor = System.Drawing.Color.Transparent;
+ this.label1.Location = new System.Drawing.Point(113, 129);
+ this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(62, 20);
+ this.label1.Size = new System.Drawing.Size(88, 36);
this.label1.TabIndex = 0;
this.label1.Text = "Cliente:";
//
// txtCliente
//
this.txtCliente.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txtCliente.Location = new System.Drawing.Point(25, 61);
+ this.txtCliente.Location = new System.Drawing.Point(117, 173);
+ this.txtCliente.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.txtCliente.Name = "txtCliente";
- this.txtCliente.Size = new System.Drawing.Size(337, 26);
+ this.txtCliente.Size = new System.Drawing.Size(448, 30);
this.txtCliente.TabIndex = 1;
//
// txtDireccion
//
this.txtDireccion.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txtDireccion.Location = new System.Drawing.Point(25, 149);
+ this.txtDireccion.Location = new System.Drawing.Point(117, 281);
+ this.txtDireccion.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.txtDireccion.Name = "txtDireccion";
- this.txtDireccion.Size = new System.Drawing.Size(337, 26);
+ this.txtDireccion.Size = new System.Drawing.Size(448, 30);
this.txtDireccion.TabIndex = 3;
//
// label2
//
this.label2.AutoSize = true;
- this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label2.Location = new System.Drawing.Point(22, 110);
+ this.label2.BackColor = System.Drawing.Color.Transparent;
+ this.label2.Font = new System.Drawing.Font("Poppins", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.label2.ForeColor = System.Drawing.Color.Transparent;
+ this.label2.Location = new System.Drawing.Point(113, 233);
+ this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(79, 20);
+ this.label2.Size = new System.Drawing.Size(112, 36);
this.label2.TabIndex = 2;
this.label2.Text = "Direccion:";
//
// txtTelefono
//
this.txtTelefono.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txtTelefono.Location = new System.Drawing.Point(24, 227);
+ this.txtTelefono.Location = new System.Drawing.Point(116, 377);
+ this.txtTelefono.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.txtTelefono.Name = "txtTelefono";
- this.txtTelefono.Size = new System.Drawing.Size(338, 26);
+ this.txtTelefono.Size = new System.Drawing.Size(449, 30);
this.txtTelefono.TabIndex = 5;
//
// label3
//
this.label3.AutoSize = true;
- this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label3.Location = new System.Drawing.Point(21, 191);
+ this.label3.BackColor = System.Drawing.Color.Transparent;
+ this.label3.Font = new System.Drawing.Font("Poppins", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.label3.ForeColor = System.Drawing.Color.Transparent;
+ this.label3.Location = new System.Drawing.Point(112, 333);
+ this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(75, 20);
+ this.label3.Size = new System.Drawing.Size(105, 36);
this.label3.TabIndex = 4;
this.label3.Text = "Telefono:";
//
// btnAceptar
//
this.btnAceptar.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnAceptar.Location = new System.Drawing.Point(103, 277);
+ this.btnAceptar.Location = new System.Drawing.Point(221, 439);
+ this.btnAceptar.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.btnAceptar.Name = "btnAceptar";
- this.btnAceptar.Size = new System.Drawing.Size(77, 31);
+ this.btnAceptar.Size = new System.Drawing.Size(103, 38);
this.btnAceptar.TabIndex = 6;
this.btnAceptar.Text = "Aceptar";
this.btnAceptar.UseVisualStyleBackColor = true;
@@ -106,9 +119,10 @@
// btnCancelar
//
this.btnCancelar.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnCancelar.Location = new System.Drawing.Point(203, 277);
+ this.btnCancelar.Location = new System.Drawing.Point(355, 439);
+ this.btnCancelar.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.btnCancelar.Name = "btnCancelar";
- this.btnCancelar.Size = new System.Drawing.Size(83, 31);
+ this.btnCancelar.Size = new System.Drawing.Size(111, 38);
this.btnCancelar.TabIndex = 8;
this.btnCancelar.Text = "Cancelar";
this.btnCancelar.UseVisualStyleBackColor = true;
@@ -116,9 +130,13 @@
//
// datosEnvio
//
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(374, 341);
+ this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(104)))), ((int)(((byte)(255)))));
+ this.BackgroundImage = global::compabetov2.Properties.Resources.Form;
+ this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
+ this.ClientSize = new System.Drawing.Size(736, 561);
+ this.ControlBox = false;
this.Controls.Add(this.btnCancelar);
this.Controls.Add(this.btnAceptar);
this.Controls.Add(this.txtTelefono);
@@ -127,8 +145,11 @@
this.Controls.Add(this.label2);
this.Controls.Add(this.txtCliente);
this.Controls.Add(this.label1);
+ this.DoubleBuffered = true;
+ this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.Name = "datosEnvio";
- this.Text = "Datos del envio";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+ this.Load += new System.EventHandler(this.datosEnvio_Load);
this.ResumeLayout(false);
this.PerformLayout();
diff --git a/Ventas/datosEnvio.cs b/Ventas/datosEnvio.cs
index 02bef41..3dca33b 100644
--- a/Ventas/datosEnvio.cs
+++ b/Ventas/datosEnvio.cs
@@ -5,6 +5,7 @@ using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
+using System.Drawing.Printing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@@ -14,6 +15,10 @@ namespace compabetov2.Ventas
{
public partial class datosEnvio : Form
{
+
+ public string Cliente => txtCliente.Text;
+ public string Direccion => txtDireccion.Text;
+ public string Telefono => txtTelefono.Text;
private Envio envio;
List detallesEnvio;
vender ventanaPadre;
@@ -25,6 +30,8 @@ namespace compabetov2.Ventas
this.ventanaPadre = ventanaPadre;
}
+
+
private void btnAceptar_Click(object sender, EventArgs e)
{
envio.cliente = txtCliente.Text;
@@ -33,10 +40,140 @@ namespace compabetov2.Ventas
if (service.crearEnvio(envio, detallesEnvio))
{
MessageBox.Show("Envio hecho");
- ventanaPadre.ImprimirTicketEnvio();
+ ImprimirTicketEnvio();
ventanaPadre.eliminarProductosTocket();
ventanaPadre.llenarLayout();
ventanaPadre.total = 0;
+
+ this.Close();
+ }
+ }
+
+ private string crearContenidoImprimir()
+ {
+ int contador_saltar_2_vueltas = 1;
+ string resultado = "";
+ foreach (var item in ventanaPadre.flowLayoutPanel2.Controls)
+ {
+ if (contador_saltar_2_vueltas <= 3)
+ {
+ contador_saltar_2_vueltas++;
+ continue;
+ }
+ TableLayoutPanel panelProducto = item as TableLayoutPanel;
+ TableLayoutPanel panelInfo = panelProducto.Controls[1] as TableLayoutPanel;
+ Label lbnombre = panelInfo.Controls[0] as Label;
+ Label lbPrecio = panelInfo.Controls[1] as Label;
+ Label Lbcantidad = panelInfo.Controls[2] as Label;
+ Label Lbtotal = panelInfo.Controls[3] as Label;
+ //nombre producto
+ string textoLbnombre = lbnombre.Text;
+ string[] cadenas = textoLbnombre.Split(':');
+ string productoNombre = cadenas[1].Remove(0, 1);
+
+ //precio
+ string textoLbPrecio = lbPrecio.Text;
+ cadenas = textoLbPrecio.Split('$');
+ string precioProducto = cadenas[1];
+
+ //cantidad
+ string textoLbCantidad = Lbcantidad.Text;
+ cadenas = textoLbCantidad.Split(':');
+ string cantidadProducto = cadenas[1].Remove(0, 1);
+
+ //total
+ string textoLbTotal = Lbtotal.Text;
+ cadenas = textoLbTotal.Split('$');
+ string totalProducto = cadenas[1];
+
+ resultado += $"{(productoNombre.Length > 10 ? $"{productoNombre}\n" : $"{productoNombre}")} | ${precioProducto} | {cantidadProducto}\n";
+
+
+ }
+ return resultado;
+ }
+
+
+ private void ImprimirContenidoEnvio(PrintPageEventArgs e)
+ {
+
+ string responsable = envio.responsable;
+ // Contenido que deseas imprimir
+ string contenido = " Mini Súper\n" +
+ " Compa BETO\n" +
+ " Saturnino Peña #44\n" +
+ " Lomas de la Laguna\n" +
+ " 311 169 2829\n" +
+ $" Fecha: {DateTime.Now.ToString("dd/MM/yyyy")}\n" +
+ $" Hora: {DateTime.Now.ToString("hh:mm:ss")}\n" +
+ $" Atendió:\n " +
+ $" {responsable}\n" +
+ $" ENVIO:\n " +
+ $" EN CAMINO:\n " +
+
+ "Producto | Precio | Cantidad\n" +
+ "------------------------------------\n";
+
+ contenido += crearContenidoImprimir();
+
+ contenido += $"------------------------------------\n" +
+ $" Total: ${envio.total + 10}\n" +
+ "------------------------------------\n" +
+ " Mini Súper\n" +
+ " Compa BETO\n" +
+ " ¡Gracias por su compra!\n" +
+ "------------------------------------\n" +
+ " Detalle envío:\n" +
+ $" Cliente: {txtCliente.Text}\n" +
+ $" Dirección: {AjustarDireccion(txtDireccion.Text)}\n" +//tengo duda aquí
+ $" Teléfono: {txtTelefono.Text}";
+
+
+ // Configuración de la fuente y del área de impresión
+ Font fuente = new Font("Arial", 10); // Ajustar el tamaño de fuente según sea necesario
+ PointF posicion = new PointF(0, e.MarginBounds.Top);
+
+ // Imprimir el contenido
+ e.Graphics.DrawString(contenido, fuente, Brushes.Black, posicion);
+ }
+ private string AjustarDireccion(string direccion)
+ {
+ const int maxCaracteresPorLinea = 8;
+
+ // Verifica la longitud de la dirección
+ if (direccion.Length > maxCaracteresPorLinea)
+ {
+ // Inserta un salto de línea después de 8 caracteres
+ int segmentos = direccion.Length / maxCaracteresPorLinea;
+ string direccionFormateada = "";
+
+ for (int i = 0; i < segmentos; i++)
+ {
+ int inicio = i * maxCaracteresPorLinea;
+ direccionFormateada += direccion.Substring(inicio, maxCaracteresPorLinea) + "\n";
+ }
+
+ return direccionFormateada;
+ }
+
+ // Devuelve la dirección sin cambios si no se necesita ajustar
+ return direccion;
+ }
+
+ public void ImprimirTicketEnvio()
+ {
+ using (PrintDocument documentoImpresion = new PrintDocument())
+ {
+ documentoImpresion.PrintPage += (sender, e) => ImprimirContenidoEnvio(e);
+ using (PrintDialog printDialog = new PrintDialog())
+ {
+ printDialog.Document = documentoImpresion;
+
+ if (printDialog.ShowDialog() == DialogResult.OK)
+ {
+ documentoImpresion.Print();
+ }
+ }
}
}
@@ -44,5 +181,10 @@ namespace compabetov2.Ventas
{
Close();
}
+
+ private void datosEnvio_Load(object sender, EventArgs e)
+ {
+
+ }
}
}
diff --git a/Ventas/vender.Designer.cs b/Ventas/vender.Designer.cs
index 7535bd4..ec13f48 100644
--- a/Ventas/vender.Designer.cs
+++ b/Ventas/vender.Designer.cs
@@ -376,7 +376,7 @@
private System.Windows.Forms.Button button5;
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
private System.ComponentModel.BackgroundWorker backgroundWorker1;
- private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel2;
+ public System.Windows.Forms.FlowLayoutPanel flowLayoutPanel2;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.PictureBox pictureBox9;
private System.Windows.Forms.Timer horafecha;
diff --git a/Ventas/vender.cs b/Ventas/vender.cs
index dc82ab1..a614ca4 100644
--- a/Ventas/vender.cs
+++ b/Ventas/vender.cs
@@ -23,7 +23,7 @@ namespace compabetov2
{
-
+ private int numeroPagina = 1; // Variable para rastrear el número de página actual
private Point lastPoint;
private List productos;
public decimal total = 0;
@@ -475,7 +475,7 @@ namespace compabetov2
}
}
- private void flowLayoutPanel2_Paint(object sender, PaintEventArgs e)
+ public void flowLayoutPanel2_Paint(object sender, PaintEventArgs e)
{
}
@@ -485,6 +485,7 @@ namespace compabetov2
}
+
private void bntImprimir_Click(object sender, EventArgs e)
{
DialogResult resultado = MessageBox.Show("¿Quieres hacer esa venta?", "Confirmación de Venta", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
@@ -529,74 +530,25 @@ namespace compabetov2
using (PrintDocument documentoImpresion = new PrintDocument())
{
documentoImpresion.PrintPage += (sender, e) => ImprimirContenido(e);
+ documentoImpresion.PrintController = new StandardPrintController(); // Evita que el documento se imprima automáticamente
+
using (PrintDialog printDialog = new PrintDialog())
{
printDialog.Document = documentoImpresion;
if (printDialog.ShowDialog() == DialogResult.OK)
{
+ // Imprime el documento
documentoImpresion.Print();
}
}
}
}
- public void ImprimirTicketEnvio()
- {
- using (PrintDocument documentoImpresion = new PrintDocument())
- {
- documentoImpresion.PrintPage += (sender, e) => ImprimirContenidoEnvio(e);
- using (PrintDialog printDialog = new PrintDialog())
- {
- printDialog.Document = documentoImpresion;
-
- if (printDialog.ShowDialog() == DialogResult.OK)
- {
- documentoImpresion.Print();
- }
- }
- }
- }
+
- private void ImprimirContenidoEnvio(PrintPageEventArgs e)
- {
-
- string responsable = responsablecb.SelectedItem.ToString();
- // Contenido que deseas imprimir
- string contenido = " Mini Súper\n" +
- " Compa BETO\n" +
- " Saturnino Peña #44\n" +
- " Lomas de la Laguna\n" +
- " 311 169 2829\n" +
- $" Fecha: {DateTime.Now.ToString("dd/MM/yyyy")}\n" +
- $" Hora: {DateTime.Now.ToString("hh:mm:ss")}\n" +
- $" Atendió:\n " +
- $" {responsable}\n" +
- $" ENVIO:\n " +
- $" EN CAMINO:\n " +
-
- "Producto | Precio | Cantidad\n" +
- "------------------------------------\n";
-
- contenido += crearContenidoImprimir();
-
- contenido += $"------------------------------------\n" +
- $" Total: ${total}\n" +
- "------------------------------------\n" +
- " Mini Súper\n" +
- " Compa BETO\n" +
- " ¡Gracias por su compra!";
-
-
- // Configuración de la fuente y del área de impresión
- Font fuente = new Font("Arial", 10); // Ajustar el tamaño de fuente según sea necesario
- PointF posicion = new PointF(0, e.MarginBounds.Top);
-
- // Imprimir el contenido
- e.Graphics.DrawString(contenido, fuente, Brushes.Black, posicion);
- }
-
+
private void ImprimirContenido(PrintPageEventArgs e)
{
@@ -631,6 +583,24 @@ namespace compabetov2
// Imprimir el contenido
e.Graphics.DrawString(contenido, fuente, Brushes.Black, posicion);
+
+ // Incrementa el número de página
+ // Tu lógica de impresión actual aquí
+
+ // Incrementa el número de página
+ numeroPagina++;
+
+ // Imprime solo dos páginas
+ if (numeroPagina <= 2)
+ {
+ e.HasMorePages = true;
+ }
+ else
+ {
+ e.HasMorePages = false;
+ numeroPagina = 1; // Reinicia el número de página para futuras impresiones
+ }
+
}
@@ -884,7 +854,7 @@ namespace compabetov2
{
List detallesEnvio = listaProductosEnvio();
string responsable = responsablecb.Text.Equals("") ? loginPrincipal.usuario : responsablecb.Text;
- Envio envio = new Envio(-1, DateTime.Now.ToString(), "", "", responsable,"","",total+10);
+ Envio envio = new Envio(-1, DateTime.Now.ToString(), "", "", responsable,"","",total);
if(detallesEnvio.Count > 0){
datosEnvio datosEnvio = new datosEnvio(envio, detallesEnvio,this);
datosEnvio.Show();
diff --git a/bin/Debug/compabetov2.exe b/bin/Debug/compabetov2.exe
index 38693df..9f1c089 100644
Binary files a/bin/Debug/compabetov2.exe and b/bin/Debug/compabetov2.exe differ
diff --git a/bin/Debug/compabetov2.pdb b/bin/Debug/compabetov2.pdb
index f11994a..2adce21 100644
Binary files a/bin/Debug/compabetov2.pdb and b/bin/Debug/compabetov2.pdb differ
diff --git a/bin/Debug/data.db b/bin/Debug/data.db
index d19483d..baa4a51 100644
Binary files a/bin/Debug/data.db and b/bin/Debug/data.db differ
diff --git a/obj/Debug/compabetov2.csproj.GenerateResource.cache b/obj/Debug/compabetov2.csproj.GenerateResource.cache
index a0d2f93..cdcb24c 100644
Binary files a/obj/Debug/compabetov2.csproj.GenerateResource.cache and b/obj/Debug/compabetov2.csproj.GenerateResource.cache differ
diff --git a/obj/Debug/compabetov2.exe b/obj/Debug/compabetov2.exe
index 38693df..9f1c089 100644
Binary files a/obj/Debug/compabetov2.exe and b/obj/Debug/compabetov2.exe differ
diff --git a/obj/Debug/compabetov2.pdb b/obj/Debug/compabetov2.pdb
index f11994a..2adce21 100644
Binary files a/obj/Debug/compabetov2.pdb and b/obj/Debug/compabetov2.pdb differ