Exemple #1
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,UsuarioId,FarmaciaId")] UsuarioFarmacia usuarioFarmacia)
        {
            if (id != usuarioFarmacia.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(usuarioFarmacia);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UsuarioFarmaciaExists(usuarioFarmacia.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["FarmaciaId"] = new SelectList(_context.Farmacia, "Id", "Id", usuarioFarmacia.FarmaciaId);
            return(View(usuarioFarmacia));
        }
Exemple #2
0
        public async Task <IActionResult> Create([Bind("Id,UsuarioId,FarmaciaId")] UsuarioFarmacia usuarioFarmacia)
        {
            if (ModelState.IsValid)
            {
                _context.Add(usuarioFarmacia);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["FarmaciaId"] = new SelectList(_context.Farmacia, "Id", "Id", usuarioFarmacia.FarmaciaId);
            return(View(usuarioFarmacia));
        }
Exemple #3
0
        public async Task <IActionResult> GuardarFavorito(int id)
        {
            // Metodo para "Guardar Favoritos"
            // Funciona de la siguiente manera
            //1: Coges el usuario de la sesion
            //2. Coges la farmacia con el id que te viene por parametro y buscar la farmacia asociada
            // 3. Incluyes los dos parametros en el objeto farmacia. El id de esta tabla es autogenerado por eso no lo tienes que incluir
            // 4. Por ultimo realizamos el RedirectToAction para que lo pase a la vista

            Usuario usuario = await _userManager.GetUserAsync(User);

            Farmacia farmacia = await _context.Farmacia.FindAsync(id);

            UsuarioFarmacia existeusuariofarmacia = _context.UsuarioFarmacia.FirstOrDefault(x => x.FarmaciaId == id);

            // Si el "Favorito" no existe se crea el favorito
            if (existeusuariofarmacia == null)
            {
                UsuarioFarmacia usuarioFarmacia = new UsuarioFarmacia
                {
                    Usuario  = usuario,
                    Farmacia = farmacia
                };
                if (ModelState.IsValid)
                {
                    _context.Add(usuarioFarmacia);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(NotFound());
                }
                //_context.Add(usuarioFarmacia);
                //await _context.SaveChangesAsync();
                //return RedirectToAction(nameof(Index));
            }
            else
            {
                // Si el favorito existe este se pasa como FAVORITO = TRUE al INDEX
                return(RedirectToAction("Index", new { favorito = "existe" }));
            }
        }
Exemple #4
0
        public async Task <IActionResult> Favorito(int id)
        {
            // Creacion de favorito de usuario farmacia
            UsuarioFarmacia favorito = new UsuarioFarmacia
            {
                // Recogemos el usuario que se ha logeado
                Usuario = await _userManager.GetUserAsync(User),
                // Id de la farmacia proveniente de farmacia
                FarmaciaId = id
            };

            // Añadimos el favorito a la tabla de UsuarioFarmacia
            await _context.AddAsync(favorito);

            // Salvamos los cambios
            await _context.SaveChangesAsync();

            // Redirigimos el favorito a la vista de UsuarioFarmacia (Favoritos Farmacia)
            return(RedirectToAction("Index"));
        }