예제 #1
0
        // metodo que devuelve una receta en especifico
        public EN.Receta getReceta(int idReceta)
        {
            EN.Receta       receta       = new EN.Receta();
            Usuario         usuario      = new Usuario();
            Categorias      categoria    = new Categorias();
            ImagenesxReceta img          = new ImagenesxReceta();
            Ingredientes    ingredientes = new Ingredientes();
            var             query        = db.Recetas.Where(x => x.Id_receta == idReceta).FirstOrDefault();

            receta.Id_receta      = query.Id_receta;
            receta.Idioma         = query.Idiomas;
            receta.PasoApaso      = query.PasoApaso;
            receta.Descripcion    = query.Descripcion;
            receta.Nombre         = query.Nombre;
            receta.puntuacion     = query.puntuacion;
            receta.Categoria      = query.Categoria.Nombre;
            receta.correo_usu     = usuario.getNombreUsuario(query.Id_usuario);
            receta.Categoria      = categoria.getNombreCategoria(query.Id_categoria);
            receta.nopuntucaiones = query.nopuntuaciones;
            receta.imagenes       = img.getImagenes(query.Id_receta).ToArray();
            receta.ingrediente    = ingredientes.getIngredientes(query.Id_receta).ToArray();


            return(receta);
        }
예제 #2
0
        //Metodo que devuelve todas las recetas de tipo EN.Receta
        public List <EN.Receta> getRecetas()
        {
            List <EN.Receta> recetas = new List <EN.Receta>();
            var query = db.Recetas.ToList();

            foreach (var item in query)
            {
                EN.Receta       receta_buscada      = new EN.Receta();
                Categorias      categoriaController = new Categorias();
                ImagenesxReceta img          = new ImagenesxReceta();
                Ingredientes    ingredientes = new Ingredientes();
                Usuario         usu          = new Usuario();
                receta_buscada.Id_receta      = item.Id_receta;
                receta_buscada.correo_usu     = usu.getNombreUsuario(item.Id_usuario);
                receta_buscada.Categoria      = categoriaController.getNombreCategoria(item.Id_categoria);
                receta_buscada.Descripcion    = item.Descripcion;
                receta_buscada.PasoApaso      = item.PasoApaso;
                receta_buscada.Idioma         = item.Idiomas;
                receta_buscada.Nombre         = item.Nombre;
                receta_buscada.puntuacion     = item.puntuacion;
                receta_buscada.nopuntucaiones = item.nopuntuaciones;
                receta_buscada.imagenes       = img.getImagenes(item.Id_receta).ToArray();
                receta_buscada.ingrediente    = ingredientes.getIngredientes(item.Id_receta).ToArray();
                recetas.Add(receta_buscada);
            }

            return(recetas);
        }
예제 #3
0
        //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);
        }
예제 #4
0
 //Metodo constructor
 public Receta()
 {
     db = new BR.SocialCookingEntities();
     usuarioController      = new Usuario();
     categoriasController   = new Categorias();
     imagenesController     = new ImagenesxReceta();
     ingredientesController = new Ingredientes();
     BrokerReceta           = new BR.Recetas();
 }
예제 #5
0
        //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);
        }