public ActionResult Index(Cesta cesta) { try { PedidoCEN pedCEN = new PedidoCEN(); PedidoCP ped = new PedidoCP(); pedCEN.Modify(cesta.pedido.Id, PracticaGenNHibernate.Enumerated.Practica.EstadoPedidoEnum.pendiente, DateTime.Now, cesta.pedido.PrecioTotal, cesta.pedido.TipoPago, true, cesta.pedido.valoracion); PedidoEN p = pedCEN.ReadOID(cesta.pedido.Id); //Aqui faltaria pillar la direccion a través de su id pero como no servia para na pues GG pedCEN.AnyadirDireccion(cesta.pedido.Id, cesta.usuario.direccion[0].id); PedidoCEN nuevo = new PedidoCEN(); nuevo.New_(PracticaGenNHibernate.Enumerated.Practica.EstadoPedidoEnum.pendiente, DateTime.Now, 0.0, PracticaGenNHibernate.Enumerated.Practica.TipoPagoEnum.contrarreembolso, cesta.usuario.id, false, 0.0); ped.Confirmar(p.Id); Session["Clineas"] = 0; return(RedirectToAction("PedidosUsuario", "Account")); } catch { return(View()); } }
public ActionResult Details(int id) { SessionInitialize(); PedidoCEN pedidoCEN = new PedidoCEN(new PedidoCAD(session)); PedidoEN pedidoEN = pedidoCEN.ReadOID(id); Pedido ped = new AssemblerPedido().ConvertENToModelUI(pedidoEN, session); SessionClose(); return(View(ped)); }
public ActionResult Estado(string id) { string[] listaAux = id.Split(','); System.Diagnostics.Debug.WriteLine(listaAux[0]); System.Diagnostics.Debug.WriteLine(listaAux[1]); PedidoCEN art = new PedidoCEN(); PedidoEN ped = art.ReadOID(Int32.Parse(listaAux[0])); ped.Estado = (CervezUAGenNHibernate.Enumerated.CervezUA.EstadoPedidoEnum)Int32.Parse(listaAux[1]); art.Modify(ped.Id, ped.Estado, ped.Importe, ped.Direccion, ped.Attribute); return(Redirect("/Pedido/Admin")); }
public void Confirmar(int p_oid) { /*PROTECTED REGION ID(PracticaGenNHibernate.CP.Practica_Pedido_confirmar) ENABLED START*/ IPedidoCAD pedidoCAD = null; PedidoCEN pedidoCEN = null; PedidoEN pedidoEN = null; IProductoCAD productoCAD = null; ProductoCEN productoCEN = null; try { SessionInitializeTransaction(); pedidoCAD = new PedidoCAD(session); pedidoCEN = new PedidoCEN(pedidoCAD); productoCAD = new ProductoCAD(session); productoCEN = new ProductoCEN(productoCAD); pedidoEN = pedidoCEN.ReadOID(p_oid); IList <LineaPedidoEN> lineas = pedidoEN.LineaPedido; foreach (LineaPedidoEN l in lineas) { productoCEN.IncrementarNumVeces(l.Producto.Id, l.Cantidad); int veces = l.Producto.NumVeces; } pedidoEN.Confirmado = true; SessionCommit(); } catch (Exception ex) { SessionRollBack(); throw ex; } finally { SessionClose(); } /*PROTECTED REGION END*/ }
public void ConfirmarPedido(int p_oid) { /*PROTECTED REGION ID(PracticaGenNHibernate.CP.Practica_Pedido_confirmarPedido) ENABLED START*/ IPedidoCAD pedidoCAD = null; PedidoCEN pedidoCEN = null; try { SessionInitializeTransaction(); pedidoCAD = new PedidoCAD(session); pedidoCEN = new PedidoCEN(pedidoCAD); // Write here your custom transaction ... PedidoEN pedidoEN = pedidoCEN.ReadOID(p_oid); pedidoEN.Confirmado = true; foreach (LineaPedidoEN linea in pedidoEN.LineaPedido) { linea.Producto.NumVeces += linea.Cantidad; } pedidoCAD.ModifyDefault(pedidoEN); SessionCommit(); } catch (Exception ex) { SessionRollBack(); throw ex; } finally { SessionClose(); } /*PROTECTED REGION END*/ }
public double CalcularMedia(int p_oid) { /*PROTECTED REGION ID(PracticaGenNHibernate.CP.Practica_Pedido_calcularMedia) ENABLED START*/ IPedidoCAD pedidoCAD = null; PedidoCEN pedidoCEN = null; PedidoEN pedidoEN = null; double result = 0; double acumulador = 0; try { SessionInitializeTransaction(); pedidoCAD = new PedidoCAD(session); pedidoCEN = new PedidoCEN(pedidoCAD); // Write here your custom transaction ... pedidoEN = pedidoCEN.ReadOID(p_oid); double count = 0.0; foreach (LineaPedidoEN lineaped in pedidoEN.LineaPedido) { if (lineaped.Valoracion == PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.mala) { acumulador += 1; } if (lineaped.Valoracion == PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.regular) { acumulador += 2; } if (lineaped.Valoracion == PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.buena) { acumulador += 3; } if (lineaped.Valoracion == PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.muybuena) { acumulador += 4; } if (lineaped.Valoracion == PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.excelente) { acumulador += 5; } count++; //numero de lineas de pedido que tiene pedido } //calculando media result = acumulador / count; SessionCommit(); } catch (Exception ex) { SessionRollBack(); throw ex; } finally { SessionClose(); } return(result); /*PROTECTED REGION END*/ }
public ActionResult Valorar(int id, int pedido, int valoracion) { try { // TODO: Add update logic here SessionInitialize(); PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum valor = PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.sin_valorar; LineaPedidoCEN linPed = new LineaPedidoCEN(new LineaPedidoCAD()); PedidoCEN pedi = new PedidoCEN(new PedidoCAD(session)); PedidoEN pedEN = pedi.ReadOID(pedido); IList <LineaPedidoEN> lineas = pedEN.LineaPedido; switch (valoracion) { case 1: valor = PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.mala; break; case 2: valor = PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.regular; break; case 3: valor = PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.buena; break; case 4: valor = PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.muybuena; break; case 5: valor = PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.excelente; break; } linPed.ValorarLinea(id, valor); int contador = 0; //compruebo que todas las chismas han sido valoradas, y si es asi llamo a calcularmedia foreach (LineaPedidoEN lin in lineas) { if (lin.Valoracion != PracticaGenNHibernate.Enumerated.Practica.TipoValoracionEnum.sin_valorar) { contador++; if (contador == lineas.Count) { return(RedirectToAction("CalcularMedia", "Pedido", new { id = pedido })); } } } SessionClose(); return(RedirectToAction("PedidosUsuario", "Account")); } catch { return(View()); } }