public void Comprar(string p_oid) { /*PROTECTED REGION ID(SMPGenNHibernate.CP.SMP_usuario_comprar) ENABLED START*/ IUsuarioCAD usuarioCAD = null; ILineas_pedidoCAD listaCAD = null; UsuarioCEN usuarioCEN = null; Lineas_pedidoCEN listaCEN = null; try { SessionInitializeTransaction(); usuarioCAD = new UsuarioCAD(session); listaCAD = new Lineas_pedidoCAD(session); usuarioCEN = new UsuarioCEN(usuarioCAD); listaCEN = new Lineas_pedidoCEN(listaCAD); // Write here your custom transaction ... //throw new NotImplementedException ("Method Anyadircomentario() not yet implemented."); UsuarioEN usuarioEN = usuarioCEN.ReadOID(p_oid); CarritoEN carritoEN = usuarioEN.Carrito; IList <Lineas_pedidoEN> listas = new List <Lineas_pedidoEN>(); listas = carritoEN.Lineas_pedido; foreach (Lineas_pedidoEN aux in listas) { // aux.Articulo_0.Stock = aux.Articulo_0.Stock - aux.Cantidad; listaCEN.Destroy(aux.Id); } SessionCommit(); //explicacion vaciar carrito, reduzca el stock de los articulos comprados. } catch (Exception ex) { SessionRollBack(); throw ex; } finally { SessionClose(); } /*PROTECTED REGION END*/ }
public ActionResult Delete(int id, FormCollection collection) { try { // TODO: Add delete logic here Lineas_pedidoCEN cen = new Lineas_pedidoCEN(); cen.Destroy(id); return(RedirectToAction("Index")); } catch { return(View()); } }
public ActionResult delllinea(int id, int idpro) { SessionInitialize(); CarritoCAD cad = new CarritoCAD(session); CarritoCEN cen = new CarritoCEN(cad); CarritoEN en = cen.ReadOID(id); EventoCEN cene = new EventoCEN(); EventoEN ene = cene.ReadOID(idpro); ProductoCEN cenp = new ProductoCEN(); ProductoEN enp = cenp.ReadOID(idpro); AssemblerCarrito ass = new AssemblerCarrito(); Carrito sol = ass.ConvertENToModelUI(en); IList <Lineas_pedidoEN> ten = en.Lineas_pedido; AssemblerLineas_pedido assc = new AssemblerLineas_pedido(); IList <Lineas_pedido> solc = assc.ConvertListENToModel(ten); Lineas_pedidoCEN den = new Lineas_pedidoCEN(); IList <int> vamos = new List <int>(); vamos.Add(idpro); int cantidad = 1; double precio = 0; foreach (Lineas_pedido linea in solc) { if (linea.id == idpro) { cantidad = linea.cantidad; cen.Modify(sol.id, sol.Precio + linea.precio); precio = linea.precio; //den.Modify(linea.id, (linea.cantidad - 1)); } } SessionClose(); precio = sol.Precio - precio; CarritoCEN fin = new CarritoCEN(); fin.Modify(id, precio); //cen.Dellinea(id, vamos); if (cantidad == 1) { den.Destroy(idpro); } else { cantidad = cantidad - 1; den.Modify(idpro, cantidad); } ViewData["correo"] = System.Web.HttpContext.Current.Session["correo"] as string; // ViewData["action"] = "Details"; return(RedirectToAction("Details", "Carrito", new { id = id })); }