//Metodo para crear una receta que recibe una EN.Receta public bool CrearReceta(EN.Receta recetas) { bool resultado = false; BR.Receta temp = new BR.Receta(); try { BR.Receta rec = new BR.Receta(); Usuario temp1 = new Usuario(); Categorias cat = new Categorias(); ImagenesxReceta imagenes = new ImagenesxReceta(); Ingredientes ingredientes = new Ingredientes(); rec.Id_usuario = temp1.getIdUsuario(recetas.correo_usu); rec.Descripcion = recetas.Descripcion; rec.PasoApaso = recetas.PasoApaso; rec.Idiomas = recetas.Idioma; rec.Nombre = recetas.Nombre; rec.puntuacion = 0; rec.nopuntuaciones = 0; rec.Id_categoria = cat.getIdCategoria(recetas.Categoria); db.Recetas.Add(rec); db.SaveChanges();//hasta aqui va bien BR.Receta tempReceta = db.Recetas.ToList().Last(); recetas.Id_receta = tempReceta.Id_receta; imagenes.ingresarImagenesReceta(recetas); ingredientes.ingresarIngrediente(recetas); resultado = true; } catch (Exception) { throw; } return(resultado); }
//Metodo para actualizar una receta public bool ActualizarReceta(int id, EN.Receta otherReceta) { bool resultado = false; try { Categorias categoriasController = new Categorias(); ImagenesxReceta imagenesController = new ImagenesxReceta(); Ingredientes ingredientesController = new Ingredientes(); //Query de la receta a actualizar BR.Recetas rec = db.Recetas.Where(x => x.Id_receta == id).FirstOrDefault(); //Se actualizan los campos rec.Descripcion = otherReceta.Descripcion; rec.PasoApaso = otherReceta.PasoApaso; rec.Idiomas = otherReceta.Idioma; rec.Nombre = otherReceta.Nombre; rec.puntuacion = otherReceta.puntuacion; rec.nopuntuaciones = otherReceta.nopuntucaiones; rec.Id_categoria = categoriasController.getIdCategoria(otherReceta.Categoria); rec.fechaPublicacion = DateTime.Today; rec.tiempoPreparacion = otherReceta.tiempoPreparacion; rec.porciones = otherReceta.porciones; db.SaveChanges(); //Falta verificar como es la actualizacion de los ingredientes if (otherReceta.imagenes.Length > 0) { imagenesController.ingresarImagenesReceta(otherReceta.imagenes, otherReceta.Id_receta); } if (otherReceta.ingrediente.Length > 0) { ingredientesController.ingresarIngrediente(otherReceta); } resultado = true; } catch (Exception) { throw; } return(resultado); }
//Metodo para crear una receta que recibe una EN.Receta public bool CrearRecetaAsync(EN.Receta recetaTSave) { bool resultado = false; try { BrokerReceta.estaReportada = 0; BrokerReceta.Descripcion = recetaTSave.Descripcion; BrokerReceta.fechaPublicacion = DateTime.Today; BrokerReceta.Idiomas = recetaTSave.Idioma; BrokerReceta.Id_categoria = categoriasController.getIdCategoria(recetaTSave.Categoria); BrokerReceta.Id_usuario = usuarioController.getIdUsuario(recetaTSave.correo_usu); BrokerReceta.Nombre = recetaTSave.Nombre; BrokerReceta.nopuntuaciones = 0; BrokerReceta.puntuacion = 0; BrokerReceta.PasoApaso = recetaTSave.PasoApaso; BrokerReceta.porciones = recetaTSave.porciones; BrokerReceta.tiempoPreparacion = recetaTSave.tiempoPreparacion; db.Recetas.Add(BrokerReceta); db.SaveChanges(); //Guardar el path de las imagenes //BR.Recetas tempReceta = db.Recetas.OrderByDescending(x=>x.Id_receta).FirstOrDefault(); recetaTSave.Id_receta = BrokerReceta.Id_receta; imagenesController.ingresarImagenesReceta(recetaTSave.imagenes, BrokerReceta.Id_receta); //Guardar los ingredientes ingredientesController.ingresarIngrediente(recetaTSave); resultado = true; } catch (Exception ex) { throw ex; } return(resultado); }