Пример #1
0
        public ActionResult ElegirToken(System.Guid id)
        {
            Pedido pedido = _pedidoServicio.ObtenerPedidoByToken(id);

            if (pedido == null)
            {
                TempData["mensaje"] = "Identificacion invalida";
                return(RedirectToAction("Error", "Home"));
            }
            else if (pedido.IdEstadoPedido == 2)
            {
                TempData["mensaje"] = "No se puede elegir los gustos por que el pedido ya fue cerrado";
                return(RedirectToAction("Error", "Home"));
            }

            if (ClsSesion.GetUsuarioLogueado() == null)
            {
                return(RedirectToAction("Login", "Home", new { redirigir = "/Pedidos/ElegirToken/" + id }));
            }
            usuarioLogueado = ClsSesion.GetUsuarioLogueado();
            //Guid token = Guid.Parse(tokn);

            if (!(usuarioLogueado.IdUsuario == pedido.InvitacionPedido.Where(i => i.Token == id).Select(u => u.IdUsuario).FirstOrDefault()))
            {
                TempData["mensaje"] = "Acceso invalido";
                return(RedirectToAction("Error", "Home"));
            }
            if (!_pedidoServicio.InvitacionPedidoUsuarioIsTrue(pedido.IdPedido, usuarioLogueado))
            {
                TempData["mensaje"] = "Acceso invalido";
                return(RedirectToAction("Error", "Home"));
            }
            ViewBag.IdUsuario       = usuarioLogueado.IdUsuario;
            ViewBag.TokenInvitacion = pedido.InvitacionPedido.Where(i => i.IdPedido == pedido.IdPedido && i.IdUsuario == usuarioLogueado.IdUsuario).FirstOrDefault().Token.ToString();
            return(View("Elegir", pedido));
        }