public ActionResult GuardarModificarProducto(producto oProducto, string idProveedores, string precioContado, string precioCosto, string precioGremio, string precioLista) { try { usuario oUsuario = (usuario)Session["Usuario"]; if (oUsuario == null || oUsuario.idTipoUsuario != 2) { Session.Clear(); return(RedirectToAction("Index", "Home")); } srvProducto sProducto = new srvProducto(); string [] idProveedor = idProveedores.Split(';'); proveedorXproducto oProvedorXproducto = new proveedorXproducto(); oProducto.precioContado = Convert.ToDecimal(precioContado.Replace(".", ",")); oProducto.precioCosto = Convert.ToDecimal(precioCosto.Replace(".", ",")); oProducto.precioGremio = Convert.ToDecimal(precioGremio.Replace(".", ",")); oProducto.precioLista = Convert.ToDecimal(precioLista.Replace(".", ",")); foreach (string idProv in idProveedor) { if (idProv != "") { oProvedorXproducto = new proveedorXproducto(); oProvedorXproducto.idProducto = oProducto.idProducto; oProvedorXproducto.idProveedor = Convert.ToInt32(idProv); oProducto.proveedorXproducto.Add(oProvedorXproducto); } } sProducto.GuardarModificarProducto(oProducto); return(RedirectToAction("ListarProducto")); } catch (Exception) { return(RedirectToAction("Error", "Error", new { stError = "Se produjo un error al intentar guardar o modificar el producto." })); } }
private producto ModificarProducto(producto oProducto) { try { using (BDSoftComputacionEntities bd = new BDSoftComputacionEntities()) { oProducto.nombre = oProducto.nombre.ToUpper(); oProducto.estado = bd.estado.Where(x => x.idEstado == oProducto.idEstado).FirstOrDefault(); bd.Database.ExecuteSqlCommand("DELETE FROM proveedorXproducto WHERE idProducto = @id", new System.Data.SqlClient.SqlParameter("id", oProducto.idProducto)); foreach (proveedorXproducto oPxp in oProducto.proveedorXproducto.ToList()) { proveedorXproducto oProV = new proveedorXproducto(); oProV.idProveedor = oPxp.idProveedor; oProV.idProducto = oPxp.idProducto; bd.Entry(oProV).State = System.Data.Entity.EntityState.Added; } oProducto.proveedorXproducto.Clear(); bd.Entry(oProducto).State = System.Data.Entity.EntityState.Modified; bd.SaveChanges(); } return(oProducto); } catch (Exception ex) { throw ex; } }
public void QuitarProveedorProducto(int idPxp) { try { using (BDSoftComputacionEntities bd = new BDSoftComputacionEntities()) { proveedorXproducto oPxp = bd.proveedorXproducto.Where(x => x.idProveedorXproducto == idPxp).FirstOrDefault(); bd.proveedorXproducto.Remove(oPxp); bd.SaveChanges(); } } catch (Exception ex) { throw ex; } }