// GET: Receta public ActionResult Index() { SessionInitialize(); IList <RecetaEN> listRecetaEn = new RecetaCAD(session).ReadAllDefault(0, -1); IEnumerable <Receta> recetas = new AssemblerReceta().ConvertListENToModel(listRecetaEn); SessionClose(); return(View(recetas)); }
// GET: Receta/Ver/5 public ActionResult Ver(int id) { SessionInitialize(); RecetaEN en = new RecetaCAD(session).ReadOIDDefault(id); Receta receta = new AssemblerReceta().ConvertENToModelUI(en); // Aunque parezca una tontería, con esto consigo la persistencia de los datos //foreach (LineaIngredienteEN lin in receta.LineasIngrediente) //{ // lin.Ingrediente.Id = lin.Ingrediente.Id; // lin.Ingrediente.Nombre = lin.Ingrediente.Nombre; //} //foreach(ComentarioEN com in receta.Comentarios) //{ // com.Usuario.Id = com.Usuario.Id; // com.Usuario.Nick = com.Usuario.Nick; //} if (User.Identity.IsAuthenticated) { UsuarioEN usuarioEn = new UsuarioCAD(session).GetByNick(User.Identity.Name); if (en.UsuariosFavorito.Contains(usuarioEn)) { ViewData["esFavorito"] = "si"; } else { ViewData["esFavorito"] = "no"; } // Obtengo listas de la compra del usuario actual ViewData["ListasCompra"] = usuarioEn.ListasCompra.ToList(); } SessionClose(); return(View(receta)); }
public ActionResult BuscaPorIngrediente(string[] ingredientes) { SessionInitialize(); // Buscamos ingrediente a ingrediente IList <int> idsIngredientes = new List <int>(); IngredienteCAD ingredienteCad = new IngredienteCAD(session); IngredienteEN ingredienteEn = null; foreach (string ing in ingredientes) { // Solo si existe, añado a la lista. Solo buscamos por ingredientes que existen ingredienteEn = ingredienteCad.GetPorNombre(ing.ToLower()); if (ingredienteEn != null) { idsIngredientes.Add(ingredienteEn.Id); } } IList <Receta> list = null; if (idsIngredientes.Count() > 0) { RecetaCAD cad = new RecetaCAD(session); RecetaCEN cen = new RecetaCEN(cad); IList <RecetaEN> listEn = cen.BuscarPorIngrediente(idsIngredientes); list = new AssemblerReceta().ConvertListENToModel(listEn); } else { list = new List <Receta>(); } SessionClose(); ViewData["ingredientes"] = ingredientes; return(View(list)); }
// GET: Receta/Ultimas public ActionResult Ultimas(string search) { SessionInitialize(); RecetaCAD recCAD = new RecetaCAD(session); RecetaCEN cen = new RecetaCEN(recCAD); IList <RecetaEN> listRecetaEN; IEnumerable <Receta> list; if (!String.IsNullOrEmpty(search)) { listRecetaEN = cen.Buscar(search); list = new AssemblerReceta().ConvertListENToModel(listRecetaEN).ToList(); } else { listRecetaEN = cen.VerUltimasRecetas(); list = new AssemblerReceta().ConvertListENToModel(listRecetaEN).ToList(); } SessionClose(); return(View(list)); }