private async void BtnBackOrder_Click(object sender, EventArgs e) { if (this.txtOrden.Text.Equals(string.Empty)) { SystemSounds.Asterisk.Play(); MessageBox.Show("DEBE TENER ABIERTA UNA ORDEN"); } else { string orden = this.txtOrden.Text; string guia; SystemSounds.Beep.Play(); do { guia = Microsoft.VisualBasic.Interaction.InputBox("ESCANEAR GUIA"); if (guia != string.Empty) { if (guia.ToUpper().Equals("NA")) { SystemSounds.Asterisk.Play(); MessageBox.Show("ESTA ORDEN NO SE PUEDE CERRAR, SIN LA GUIA CORRECTA, DEBE LIMPIAR LA ORDEN Y COMENZAR NUEVAMENTE."); break; } else if (guia.ToUpper().Equals("M")) { //Cerrar Orden bool qr = await ctrlScan.CapturaQR(ListaQR); bool agregarauditor = await ctrlScan.AgregarAuditor(orden, this.lblAuditor.Text); bool cerrarorden = await ctrlScan.CerrarOrdenBackOrden(orden, this.lblPicker.Text.ToUpper()); Limpiar(); break; } else { if (ctrlScan.ExisteGuia(guia)) { if (ctrlScan.GuiaOrden(orden, guia)) { //Cerrar Orden bool qr = await ctrlScan.CapturaQR(ListaQR); bool agregarauditor = await ctrlScan.AgregarAuditor(orden, this.lblAuditor.Text); bool cerrarorden = await ctrlScan.CerrarOrdenBackOrden(orden, this.lblPicker.Text.ToUpper()); Limpiar(); } else { SystemSounds.Asterisk.Play(); MessageBox.Show("GUIA NO PERTENECE A LA ORDEN"); guia = string.Empty; } } else { SystemSounds.Asterisk.Play(); MessageBox.Show("GUIA NO EXISTE"); guia = string.Empty; } } } }while (guia.Equals(string.Empty)); MessageBox.Show("ORDEN CERRADA CORRECTAMENTE"); Limpiar(); } }
private async void TxtProducto_KeyPress(object sender, KeyPressEventArgs e) { if ((int)e.KeyChar == (int)Keys.Enter) { ctrlScan = new scanController(); string producto = this.txtProducto.Text.ToUpper(); string orden = this.txtOrden.Text.ToUpper(); if (ctrlScan.ExisteSKU(producto)) { if (ctrlScan.IsKit(producto)) { if (ctrlScan.CantidadKitCorrecta(producto, ListaInicial)) { foreach (var item in ctrlScan.ListaKit(producto)) { int cantidadEscaneados = (int)ListaInicial.Where(x => x.SKU.Equals(item.skus.Sku)).Sum(x => x.CantidadEscaneos); int cantidadAgregar = cantidadEscaneados + (int)item.Cantidad; var cantidadEscaneado = ListaInicial.Where(x => x.SKU.Equals(item.skus.Sku)).FirstOrDefault(); cantidadEscaneado.CantidadEscaneos = cantidadAgregar; } } else { SystemSounds.Asterisk.Play(); string respuesta; do { respuesta = Microsoft.VisualBasic.Interaction.InputBox("LA CANTIDAD DEL PAH O KIT ES MAYOR A LA SOLICITADA EN LA ORDEN"); } while (respuesta.ToUpper() != "OK"); ErrorSobrante(); } this.dataGridView1.DataSource = null; this.dataGridView1.DataSource = ListaInicial; this.txtProducto.Text = ""; this.txtProducto.Focus(); if (ListaInicial.Sum(x => x.CantidadEscaneos) == (ListaInicial.Sum(x => x.cantidad) * -1)) { //Cerrar Orden string guia; SystemSounds.Beep.Play(); do { guia = Microsoft.VisualBasic.Interaction.InputBox("ESCANEAR GUIA"); if (guia != string.Empty) { if (guia.ToUpper().Equals("NA")) { SystemSounds.Asterisk.Play(); MessageBox.Show("ESTA ORDEN NO SE PUEDE CERRAR, SIN LA GUIA CORRECTA, DEBE LIMPIAR LA ORDEN Y COMENZAR NUEVAMENTE."); break; } else if (guia.ToUpper().Equals("M")) { //Cerrar Orden bool qr = await ctrlScan.CapturaQR(ListaQR); bool error = await ctrlScan.CapturaErrores(ListaErrores); bool agregarauditor = await ctrlScan.AgregarAuditor(orden, this.lblAuditor.Text); bool cerrarorden = await ctrlScan.CerrarOrdenSinGuia(orden, this.lblPicker.Text.ToUpper()); Limpiar(); break; } else { if (ctrlScan.ExisteGuia(guia)) { if (ctrlScan.GuiaOrden(orden, guia)) { //Cerrar Orden bool qr = await ctrlScan.CapturaQR(ListaQR); bool error = await ctrlScan.CapturaErrores(ListaErrores); bool agregarauditor = await ctrlScan.AgregarAuditor(orden, this.lblAuditor.Text); bool cerrarorden = await ctrlScan.CerrarOrden(orden, this.lblPicker.Text.ToUpper()); Limpiar(); } else { SystemSounds.Asterisk.Play(); MessageBox.Show("GUIA NO PERTENECE A LA ORDEN"); guia = string.Empty; ErrorGuiaIncorrecta(); } } else { SystemSounds.Asterisk.Play(); MessageBox.Show("GUIA NO EXISTE"); guia = string.Empty; } } } }while (guia.Equals(string.Empty)); } } else { if (ctrlScan.SKUPerteneceOrden(orden, producto)) { int cantidadBD = (int)ListaInicial.Where(x => x.SKU.Equals(producto)).Sum(x => x.cantidad * -1); int cantidadEscaneados = (int)ListaInicial.Where(x => x.SKU.Equals(producto)).Sum(x => x.CantidadEscaneos); if (ctrlScan.IsQRCode(producto)) { int cantidadAgregar = cantidadEscaneados + 1; if (cantidadAgregar <= cantidadBD) { string qrcode; SystemSounds.Beep.Play(); do { qrcode = Microsoft.VisualBasic.Interaction.InputBox("ESCANEAR CODIGO QR"); if (qrcode != string.Empty) { if (qrcode.Length < 15) { SystemSounds.Asterisk.Play(); MessageBox.Show("CODIGO QR NO VALIDO"); qrcode = string.Empty; } else { var validarqr = ListaQR.Where(x => x.CodigoQR.Equals(qrcode)).FirstOrDefault(); if (validarqr == null) { var cantidadEscaneado = ListaInicial.Where(x => x.SKU.Equals(producto)).FirstOrDefault(); cantidadEscaneado.CantidadEscaneos = cantidadAgregar; codigoqrordenes codigoqrordenes = new codigoqrordenes(); codigoqrordenes.CodigoQR = qrcode; codigoqrordenes.Ordenes_Id = int.Parse(lblOrdenId.Text); ListaQR.Add(codigoqrordenes); } else { SystemSounds.Asterisk.Play(); MessageBox.Show("EL CODIGO QR NO PUEDE ESTAR REPETIDO"); } } } else { SystemSounds.Asterisk.Play(); MessageBox.Show("EL CODIGO QR NO PUEDE ESTAR VACIO"); } } while (qrcode.Equals(string.Empty)); } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("YA SE HA COMPLETADO EL ESCANEO DE ESTE SKU"); } while (respuesta.ToUpper() != "OK"); ErrorSobrante(); } } else if (ctrlScan.IsQTYManual(producto)) { string qty; do { qty = Microsoft.VisualBasic.Interaction.InputBox("CAPTURE LA CANTIDAD DE SKUS"); int cantidadAgregar = cantidadEscaneados + int.Parse(qty); if (cantidadAgregar <= cantidadBD) { var cantidadEscaneado = ListaInicial.Where(x => x.SKU.Equals(producto)).FirstOrDefault(); cantidadEscaneado.CantidadEscaneos = cantidadAgregar; } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("LA CANTIDAD DE SKUS NO PUEDE SER MAYOR A LA DE LA ORDEN"); } while (respuesta.ToUpper() != "OK"); ErrorSobrante(); } } while (qty.Equals(string.Empty)); } else { int cantidadAgregar = cantidadEscaneados + 1; if (cantidadAgregar <= cantidadBD) { var cantidadEscaneado = ListaInicial.Where(x => x.SKU.Equals(producto)).FirstOrDefault(); cantidadEscaneado.CantidadEscaneos = cantidadAgregar; } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("YA SE HA COMPLETADO EL ESCANEO DE ESTE SKU"); } while (respuesta.ToUpper() != "OK"); ErrorSobrante(); } } this.dataGridView1.DataSource = null; this.dataGridView1.DataSource = ListaInicial; this.txtProducto.Text = ""; this.txtProducto.Focus(); if (ListaInicial.Sum(x => x.CantidadEscaneos) == (ListaInicial.Sum(x => x.cantidad) * -1)) { string guia; SystemSounds.Beep.Play(); do { guia = Microsoft.VisualBasic.Interaction.InputBox("ESCANEAR GUIA"); if (guia != string.Empty) { if (guia.ToUpper().Equals("NA")) { SystemSounds.Asterisk.Play(); MessageBox.Show("ESTA ORDEN NO SE PUEDE CERRAR, SIN LA GUIA CORRECTA, DEBE LIMPIAR LA ORDEN Y COMENZAR NUEVAMENTE."); break; } else if (guia.ToUpper().Equals("M")) { //Cerrar Orden bool qr = await ctrlScan.CapturaQR(ListaQR); bool error = await ctrlScan.CapturaErrores(ListaErrores); bool agregarauditor = await ctrlScan.AgregarAuditor(orden, this.lblAuditor.Text); bool cerrarorden = await ctrlScan.CerrarOrdenSinGuia(orden, this.lblPicker.Text.ToUpper()); Limpiar(); break; } else { if (ctrlScan.ExisteGuia(guia)) { if (ctrlScan.GuiaOrden(orden, guia)) { //Cerrar Orden bool qr = await ctrlScan.CapturaQR(ListaQR); bool error = await ctrlScan.CapturaErrores(ListaErrores); bool agregarauditor = await ctrlScan.AgregarAuditor(orden, this.lblAuditor.Text); bool cerrarorden = await ctrlScan.CerrarOrden(orden, this.lblPicker.Text.ToUpper()); Limpiar(); } else { SystemSounds.Asterisk.Play(); MessageBox.Show("GUIA NO PERTENECE A LA ORDEN"); guia = string.Empty; ErrorGuiaIncorrecta(); } } else { SystemSounds.Asterisk.Play(); MessageBox.Show("GUIA NO EXISTE"); guia = string.Empty; } } } }while (guia.Equals(string.Empty)); } } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("ESTE SKU NO PERTENECE A LA ORDEN"); } while (respuesta.ToUpper() != "OK"); ErrorSkuIncorrecto(); this.txtProducto.Text = ""; this.txtProducto.Focus(); } } } else if (ctrlScan.IsBenevidesCode(producto)) { string skuvalido = ctrlScan.SkuValidoDesdeBenavides(producto); if (ctrlScan.SKUPerteneceOrden(orden, skuvalido)) { int cantidadBD = (int)ListaInicial.Where(x => x.SKU.Equals(skuvalido)).Sum(x => x.cantidad * -1); int cantidadEscaneados = (int)ListaInicial.Where(x => x.SKU.Equals(skuvalido)).Sum(x => x.CantidadEscaneos); if (ctrlScan.IsQRCode(skuvalido)) { int cantidadAgregar = cantidadEscaneados + 1; if (cantidadAgregar <= cantidadBD) { string qrcode; SystemSounds.Beep.Play(); do { qrcode = Microsoft.VisualBasic.Interaction.InputBox("ESCANEAR CODIGO QR"); if (qrcode != string.Empty) { if (qrcode.Length < 15) { SystemSounds.Asterisk.Play(); MessageBox.Show("CODIGO QR NO VALIDO"); qrcode = string.Empty; } else { var validarqr = ListaQR.Where(x => x.CodigoQR.Equals(qrcode)).FirstOrDefault(); if (validarqr == null) { var cantidadEscaneado = ListaInicial.Where(x => x.SKU.Equals(skuvalido)).FirstOrDefault(); cantidadEscaneado.CantidadEscaneos = cantidadAgregar; codigoqrordenes codigoqrordenes = new codigoqrordenes(); codigoqrordenes.CodigoQR = qrcode; codigoqrordenes.Ordenes_Id = int.Parse(lblOrdenId.Text); ListaQR.Add(codigoqrordenes); } else { SystemSounds.Asterisk.Play(); MessageBox.Show("EL CODIGO QR NO PUEDE ESTAR REPETIDO"); } } } else { SystemSounds.Asterisk.Play(); MessageBox.Show("EL CODIGO QR NO PUEDE ESTAR VACIO"); } } while (qrcode.Equals(string.Empty)); } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("YA SE HA COMPLETADO EL ESCANEO DE ESTE SKU"); } while (respuesta.ToUpper() != "OK"); ErrorSobrante(); } } else if (ctrlScan.IsQTYManual(skuvalido)) { string qty; do { qty = Microsoft.VisualBasic.Interaction.InputBox("CAPTURE LA CANTIDAD DE SKUS"); int cantidadAgregar = cantidadEscaneados + int.Parse(qty); if (cantidadAgregar <= cantidadBD) { var cantidadEscaneado = ListaInicial.Where(x => x.SKU.Equals(skuvalido)).FirstOrDefault(); cantidadEscaneado.CantidadEscaneos = cantidadAgregar; } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("LA CANTIDAD DE SKUS NO PUEDE SER MAYOR A LA DE LA ORDEN"); } while (respuesta.ToUpper() != "OK"); ErrorSobrante(); } } while (qty.Equals(string.Empty)); } else { int cantidadAgregar = cantidadEscaneados + 1; if (cantidadAgregar <= cantidadBD) { var cantidadEscaneado = ListaInicial.Where(x => x.SKU.Equals(skuvalido)).FirstOrDefault(); cantidadEscaneado.CantidadEscaneos = cantidadAgregar; } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("YA SE HA COMPLETADO EL ESCANEO DE ESTE SKU"); } while (respuesta.ToUpper() != "OK"); ErrorSobrante(); } } this.dataGridView1.DataSource = null; this.dataGridView1.DataSource = ListaInicial; this.txtProducto.Text = ""; this.txtProducto.Focus(); if (ListaInicial.Sum(x => x.CantidadEscaneos) == (ListaInicial.Sum(x => x.cantidad) * -1)) { string guia; SystemSounds.Beep.Play(); do { guia = Microsoft.VisualBasic.Interaction.InputBox("ESCANEAR GUIA"); if (guia != string.Empty) { if (guia.ToUpper().Equals("NA")) { SystemSounds.Asterisk.Play(); MessageBox.Show("ESTA ORDEN NO SE PUEDE CERRAR, SIN LA GUIA CORRECTA, DEBE LIMPIAR LA ORDEN Y COMENZAR NUEVAMENTE."); break; } else if (guia.ToUpper().Equals("M")) { //Cerrar Orden bool qr = await ctrlScan.CapturaQR(ListaQR); bool error = await ctrlScan.CapturaErrores(ListaErrores); bool agregarauditor = await ctrlScan.AgregarAuditor(orden, this.lblAuditor.Text); bool cerrarorden = await ctrlScan.CerrarOrdenSinGuia(orden, this.lblPicker.Text.ToUpper()); Limpiar(); break; } else { if (ctrlScan.ExisteGuia(guia)) { if (ctrlScan.GuiaOrden(orden, guia)) { //Cerrar Orden bool qr = await ctrlScan.CapturaQR(ListaQR); bool error = await ctrlScan.CapturaErrores(ListaErrores); bool agregarauditor = await ctrlScan.AgregarAuditor(orden, this.lblAuditor.Text); bool cerrarorden = await ctrlScan.CerrarOrden(orden, this.lblPicker.Text.ToUpper()); Limpiar(); } else { SystemSounds.Asterisk.Play(); MessageBox.Show("GUIA NO PERTENECE A LA ORDEN"); guia = string.Empty; ErrorGuiaIncorrecta(); } } else { SystemSounds.Asterisk.Play(); MessageBox.Show("GUIA NO EXISTE"); guia = string.Empty; } } } }while (guia.Equals(string.Empty)); } } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("ESTE SKU NO PERTENECE A LA ORDEN"); } while (respuesta.ToUpper() != "OK"); ErrorSkuIncorrecto(); this.txtProducto.Text = ""; this.txtProducto.Focus(); } } else { string respuesta; do { SystemSounds.Asterisk.Play(); respuesta = Microsoft.VisualBasic.Interaction.InputBox("ESTE SKU NO EXISTE"); } while (respuesta.ToUpper() != "OK"); this.txtProducto.Text = ""; this.txtProducto.Focus(); } e.Handled = true; } }