public bool AgregarDetalles(List <detordenproductoshd> listOracle) { try { int contador = 0; foreach (var item in listOracle) { detordenproductoshd detordenproductoshd = new detordenproductoshd(); contador++; detordenproductoshd.Ordenes_Id = item.Ordenes_Id; detordenproductoshd.Skus_Id = item.Skus_Id; detordenproductoshd.cantidad = item.cantidad; db.detordenproductoshd.Add(detordenproductoshd); db.SaveChanges(); } return(true); } catch (Exception _ex) { Console.WriteLine(_ex.Message.ToString()); return(false); } }
public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ordenes ordenes = db.ordenes.Find(id); if (ordenes == null) { return(HttpNotFound()); } var detuser = db.detusuariosordenes.Where(x => x.Ordenes_Id == id).FirstOrDefault(); if (detuser != null) { ViewBag.Auditor = detuser.usuarios.nombre.ToUpper(); } var detalleOrden = db.detordenproductoshd.Where(x => x.Ordenes_Id == id).ToList(); List <detordenproductoshd> lista = new List <detordenproductoshd>(); foreach (var item in detalleOrden) { detordenproductoshd detordenproductoshd = new detordenproductoshd(); detordenproductoshd.cantidad = item.cantidad; detordenproductoshd.SKU = item.skus.Sku; detordenproductoshd.SKUDescripcion = item.skus.Descripcion; lista.Add(detordenproductoshd); } ViewBag.Detalle = lista; return(View(ordenes)); }
public List <detordenproductoshd> DetalleOrden(string orden) { try { List <detordenproductoshd> listaTemp = new List <detordenproductoshd>(); var detallesOrden = db.detordenproductoshd.Where(x => x.ordenes.Orden.Equals(orden)).ToList(); foreach (var item in detallesOrden) { detordenproductoshd detordenproductoshd = new detordenproductoshd(); detordenproductoshd.SKU = item.skus.Sku; detordenproductoshd.cantidad = item.cantidad; detordenproductoshd.CantidadEscaneos = 0; listaTemp.Add(detordenproductoshd); } return(listaTemp); } catch (Exception) { return(null); } }
public List <detordenproductoshd> ListaDetallesByOrden(string orden) { try { List <detordenproductoshd> lista = new List <detordenproductoshd>(); ordenes ordenes = db.ordenes.Where(x => x.Orden.Contains(orden)).FirstOrDefault(); foreach (var item in db.detordenproductoshd.Where(x => x.Ordenes_Id == ordenes.id).ToList()) { detordenproductoshd detordenproductoshd = new detordenproductoshd(); detordenproductoshd.SKU = item.skus.Sku; detordenproductoshd.cantidad = item.cantidad; detordenproductoshd.CantidadSKUS = 0; lista.Add(detordenproductoshd); } return(lista); } catch (Exception) { return(null); } }
public void ValidarLista(string orden, string producto) { //Validar que la caja de producto no este vacia if (txtProducto.Text != string.Empty) { if (ctrlEscaneos.IsKit(producto)) { if (ValidarSKUSKit(producto)) { if (ValidarCantidadesKit(producto)) { List <detkitskus> listaTemp = ctrlEscaneos.listaPack(producto); foreach (var item in listaTemp) { detordenproductoshd detalle = new detordenproductoshd(); index++; detalle.Index = index; detalle.SKU = item.skus.Sku; detalle.CantidadSKUS = (int)item.Cantidad; detalle.codigoqr = "NA"; lista.Add(detalle); if (CerrarAutomaticamente()) { SystemSounds.Beep.Play(); } else { //Actualizar la cantidad escaneada en el GRIDVIEW int cantidad = lista.Where(x => x.SKU.Contains(item.skus.Sku)).Sum(x => x.CantidadSKUS); var detalleTemp = ListaGrid.Where(x => x.SKU.Contains(item.skus.Sku.ToUpper())).FirstOrDefault(); detalleTemp.CantidadSKUS = cantidad; dgvEscaneos.DataSource = null; dgvEscaneos.DataSource = ListaGrid; this.txtProducto.Text = ""; this.txtProducto.Focus(); } } } else { MessageBox.Show("LA CANTIDAD DEL PAH O DEL PAQUETE ES SUPERIOR AL DE LA ORDEN", "CANTIDAD SUPERIOR A LA DE LA ORDEN", MessageBoxButtons.OK, MessageBoxIcon.Error); this.txtProducto.Text = ""; this.txtProducto.Focus(); } } else { MessageBox.Show("LOS SKUS DEL PAH O DEL PAQUETE NO PERTENECEN AL LA ORDEN", "KIT INCORRECTO", MessageBoxButtons.OK, MessageBoxIcon.Error); this.txtProducto.Text = ""; this.txtProducto.Focus(); } } else { //Validando SKU if (ctrlEscaneos.ValidarSKU(orden, producto)) { detordenproductoshd detalle = new detordenproductoshd(); index++; detalle.Index = index; detalle.SKU = txtProducto.Text; detalle.CantidadSKUS = 1; detalle.codigoqr = "NA"; lista.Add(detalle); if (ValidarByCantidadTotal()) { if (ValidarByCantidadArticulo(orden, producto, lista)) { if (ctrlEscaneos.IsQTYManual(producto)) { if (ValidarByCantidadArticulo(orden, producto, lista)) { SystemSounds.Beep.Play(); int cantidad = int.Parse(Microsoft.VisualBasic.Interaction.InputBox("AGREGAR CANTIDAD MANUAL", "TECLEAR LA CANTIDAD DE PRODUCTOS A INGRESAR")); int cantidadLista = lista.Where(x => x.SKU.Contains(producto)).Sum(x => x.CantidadSKUS); int cantidadTotal = (cantidad + cantidadLista) - 1; if (cantidadTotal > ctrlEscaneos.CantidadManualByArticulo(orden, producto)) { SystemSounds.Asterisk.Play(); MessageBox.Show("ERROR EN CANTIDAD MANUAL. LA CANTIDAD NO PUEDE SER MAYOR A LADE LA ORDEN, ESCANEA NUEVAMENTE EL SKU Y TECLEA UNA CANTIDAD VALIDA"); index--; lista.RemoveAt(index); ctrlEscaneos.ErrorCantidadMayorSKU(orden); } else { detordenproductoshd detalleTemp = lista.Where(x => x.SKU == producto).FirstOrDefault(); detalle.CantidadSKUS = cantidadTotal; } } } if (ctrlEscaneos.IsQRCode(producto)) { SystemSounds.Beep.Play(); string qr = Microsoft.VisualBasic.Interaction.InputBox("AGREGAR CODIGO QR", "ESCANEAR CODIGO QR DEL PRODUCTO"); if (qr.Equals(string.Empty)) { SystemSounds.Asterisk.Play(); MessageBox.Show("ERROR DE CODIGO QR. EL CODIGO QR NO PUEDE ESTAR VACIO, ESCANEA NUEVAMENTE EL SKU Y SU CODIGO QR"); index--; lista.RemoveAt(index); } else { if (ctrlEscaneos.ValidarQR(qr, producto, lista)) { index--; lista.RemoveAt(index); SystemSounds.Asterisk.Play(); MessageBox.Show("ERROR DE CODIGO QR. ESTE CODIGO QR YA EXISTE, ESCANEA NUEVAMENTE EL SKU Y SU CODIGO QR"); } else { detalle.codigoqr = qr; var detalleTemp = lista.Where(x => x.Index == index).FirstOrDefault(); if (detalleTemp != null) { detalle.codigoqr = detalleTemp.codigoqr; } } } } if (CerrarAutomaticamente()) { SystemSounds.Beep.Play(); } else { //Actualizar la cantidad escaneada en el GRIDVIEW int cantidad = lista.Where(x => x.SKU.Contains(producto)).Sum(x => x.CantidadSKUS); var detalleTemp = ListaGrid.Where(x => x.SKU.Contains(producto.ToUpper())).FirstOrDefault(); detalleTemp.CantidadSKUS = cantidad; dgvEscaneos.DataSource = null; dgvEscaneos.DataSource = ListaGrid; this.txtProducto.Text = ""; this.txtProducto.Focus(); } } else { this.txtProducto.Text = ""; this.txtProducto.Focus(); } } } else { //Se tiene que configurar en Windows el Sonido de Asterisk SystemSounds.Asterisk.Play(); MessageBox.Show("ESTE SKU NO PERTENECE A LA ORDEN"); ctrlEscaneos.ErrorSKUIncorrecto(orden); } } } }
public ActionResult ObtenerOrdenes() { try { var Draw = Request.Form.GetValues("draw").FirstOrDefault(); var Start = Request.Form.GetValues("start").FirstOrDefault(); var Length = Request.Form.GetValues("length").FirstOrDefault(); var SortColumn = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]").FirstOrDefault() + "][data]").FirstOrDefault(); var SortColumnDir = Request.Form.GetValues("order[0][dir]").FirstOrDefault(); var fechaInicio = Request.Form.GetValues("columns[0][search][value]").FirstOrDefault(); var fechaFin = Request.Form.GetValues("columns[1][search][value]").FirstOrDefault(); int PageSize = Length != null?Convert.ToInt32(Length) : 0; int Skip = Start != null?Convert.ToInt32(Start) : 0; int TotalRecords = 0; List <detordenproductoshd> Inventario = new List <detordenproductoshd>(); using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ToString())) { con.Open(); string sql = "exec SP_Inventario_ConsultaParametrosOpcionales @fechaOrdenes"; var query = new SqlCommand(sql, con); if (fechaInicio != "") { DateTime date = Convert.ToDateTime(fechaInicio); query.Parameters.AddWithValue("@fechaOrdenes", date); } else { query.Parameters.AddWithValue("@fechaOrdenes", DBNull.Value); } using (var dr = query.ExecuteReader()) { while (dr.Read()) { // facturas var detalle = new detordenproductoshd(); detalle.FechaString = dr["FechaAlta"].ToString(); detalle.OrdenString = dr["Orden"].ToString(); detalle.OracleID = dr["User"].ToString(); detalle.Cantidad = Convert.ToInt32(dr["cantidad"]); detalle.SKUDescripcion = dr["Sku"].ToString(); Inventario.Add(detalle); } } } if (!(string.IsNullOrEmpty(SortColumn) && string.IsNullOrEmpty(SortColumnDir))) { Inventario = Inventario.OrderBy(SortColumn + " " + SortColumnDir).ToList(); } TotalRecords = Inventario.ToList().Count(); var NewItems = Inventario.Skip(Skip).Take(PageSize == -1 ? TotalRecords : PageSize).ToList(); return(Json(new { draw = Draw, recordsFiltered = TotalRecords, recordsTotal = TotalRecords, data = NewItems }, JsonRequestBehavior.AllowGet)); } catch (Exception _ex) { Console.WriteLine(_ex.Message.ToString()); return(null); } }