protected void gridProductos_RowUpdating(object sender, GridViewUpdateEventArgs e) { string M = string.Empty; int idArticulo = Utilerias.StrToInt(gridProductos.DataKeys[e.RowIndex].Value.ToString()); ArticuloSalidaGenerica objArticulo = uow.ArticuloSalidaGenericaBusinessLogic.GetByID(idArticulo); int cantidad = Utilerias.StrToInt(((HtmlInputGenericControl)gridProductos.Rows[e.RowIndex].FindControl("txtCantidad")).Value); if (cantidad == 0) { cantidad = 1; } Articulos artCat = uow.ArticulosBL.GetByID(objArticulo.ArticuloId); if (cantidad > artCat.CantidadDisponible) { //gridProductos.EditIndex = -1; //BindGridProductosSalidas(); //return; cantidad = artCat.CantidadDisponible; } objArticulo.Cantidad = cantidad; uow.ArticuloSalidaGenericaBusinessLogic.Update(objArticulo); uow.SaveChanges(); //SI HUBO ERORRES AL ELIMINAR REGISTROS PREVIOS if (uow.Errors.Count > 0) { foreach (string m in uow.Errors) { M += m; } divMsgError.Style.Add("display", "block"); divMsgSuccess.Style.Add("display", "none"); lblMsgError.Text = M; return; } // Cancelamos la edicion del grid gridProductos.EditIndex = -1; BindGridProductosSalidas(); OcultarError(); }
protected void gridProductos_RowDeleting(object sender, GridViewDeleteEventArgs e) { string M = string.Empty; int idArticulo = Utilerias.StrToInt(gridProductos.DataKeys[e.RowIndex].Value.ToString()); ArticuloSalidaGenerica objArticulo = uow.ArticuloSalidaGenericaBusinessLogic.GetByID(idArticulo); string[] idsProducto = _ProductosVenta.Value.Split('|'); uow.ArticuloSalidaGenericaBusinessLogic.Delete(objArticulo); uow.SaveChanges(); //SI HUBO ERORRES AL ELIMINAR REGISTROS PREVIOS if (uow.Errors.Count > 0) { foreach (string m in uow.Errors) { M += m; } divMsgError.Style.Add("display", "block"); divMsgSuccess.Style.Add("display", "none"); lblMsgError.Text = M; return; } _ProductosVenta.Value = string.Empty; foreach (string id in idsProducto) { if (!id.Equals(idArticulo.ToString())) { if (_ProductosVenta.Value.Equals(string.Empty)) { _ProductosVenta.Value = id; } else { _ProductosVenta.Value += "|" + id; } } } BindGridProductosSalidas(); OcultarError(); }
private bool ExisteProductoEnSalida(int idProducto) { string[] ids = _ProductosVenta.Value.Split('|'); foreach (string id in ids) { int idArtSalida = Utilerias.StrToInt(id); ArticuloSalidaGenerica artVenta = uow.ArticuloSalidaGenericaBusinessLogic.Get(e => e.Id == idArtSalida && e.ArticuloId == idProducto).FirstOrDefault(); if (artVenta != null) { return(true); } else { continue; } } return(false); }
protected void btnAgregar_Click(object sender, EventArgs e) { string cadenaValores = _CadValoresSeleccionados.Value; if (cadenaValores.Equals(string.Empty)) { return; } string[] ids = cadenaValores.Split('|'); int idProducto; Articulos articulo; string M = string.Empty; int idUser = Utilerias.StrToInt(Session["IdUser"].ToString()); foreach (string id in ids) { idProducto = Utilerias.StrToInt(id); articulo = uow.ArticulosBL.GetByID(idProducto); if (!_ProductosVenta.Value.Equals(string.Empty)) { if (ExisteProductoEnSalida(articulo.Id)) { continue; } } ArticuloSalidaGenerica artSalida = new ArticuloSalidaGenerica(); artSalida.ArticuloId = idProducto; artSalida.Cantidad = 1; artSalida.Nombre = ConcatenarNombreArticulo(idProducto);//articulo.Nombre; artSalida.UsuarioId = idUser; uow.ArticuloSalidaGenericaBusinessLogic.Insert(artSalida); uow.SaveChanges(); //SI HUBO ERORRES if (uow.Errors.Count > 0) { foreach (string m in uow.Errors) { M += m; } divMsgError.Style.Add("display", "block"); divMsgSuccess.Style.Add("display", "none"); lblMsgError.Text = M; return; } if (_ProductosVenta.Value == string.Empty) { _ProductosVenta.Value = artSalida.Id.ToString(); } else { _ProductosVenta.Value += "|" + artSalida.Id.ToString(); } } _CadValoresSeleccionados.Value = string.Empty; BindGridProductosSalidas(); OcultarError(); }