public ActionResult CreateyAnyade(int id, int cantidad, string vuelve) { try { SessionInitialize(); PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum valor = PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.sin_valorar; LineaPedidoCEN linPed = new LineaPedidoCEN(new LineaPedidoCAD()); UsuarioCEN usu = new UsuarioCEN(); PedidoCEN pedi = new PedidoCEN(new PedidoCAD(session)); IList <UsuarioEN> hola = usu.UsuarioPorEmail(User.Identity.Name); IList <PedidoEN> pedidos = pedi.DevolverPedidosUsuario(hola[0].Nombre); Boolean existe = false; foreach (LineaPedidoEN linea in pedidos[(pedidos.Count) - 1].LineaPedido) { if (linea.Producto.Id == id) { linPed.Modify(linea.Id, linea.Cantidad + cantidad, linea.Valoracion); existe = true; } } int id2 = pedidos[(pedidos.Count) - 1].Id; if (existe == false) { int idLin = linPed.New_(id2, cantidad, valor); IList <int> idLineas = new List <int>(); idLineas.Add(idLin); linPed.AnyadirProducto(idLin, id); pedi.AnyadirLineaPedido(id2, idLineas); Session["Clineas"] = Convert.ToInt32(Session["Clineas"]) + 1; } PracticaGenNHibernate.CP.Practica.PedidoCP a = new PracticaGenNHibernate.CP.Practica.PedidoCP(); a.CalcularPrecio(id2); SessionClose(); if (!vuelve.Equals("Personalizada")) { return(RedirectToAction("IndexUser", vuelve)); } else { return(RedirectToAction("Index", "Cesta")); } } catch { return(View()); } }
public ActionResult Create(LineaPedido linea) { try { LineaPedidoCEN linPed = new LineaPedidoCEN(); int id = linPed.New_(linea.idpedido, linea.Cantidad, linea.Valoracion); linPed.AnyadirProducto(id, linea.idproducto); PracticaGenNHibernate.CP.Practica.PedidoCP a = new PracticaGenNHibernate.CP.Practica.PedidoCP(); a.CalcularPrecio(linea.idpedido); return(RedirectToAction("Index")); } catch { return(View()); } }