public IActionResult Index()
        {
            List <Reserva> list = reservaRepository.ObterTodos();

            DashboardViewModel dashboardViewModel = new DashboardViewModel();

            foreach (var reserva in list)
            {
                switch (reserva.Status)
                {
                case (uint)StatusReserva.APROVADO:
                    dashboardViewModel.ReservasAprovadas++;
                    break;

                case (uint)StatusReserva.REPROVADO:
                    dashboardViewModel.ReservasReprovadas++;
                    break;

                default:
                    dashboardViewModel.Reservas.Add(reserva);
                    dashboardViewModel.ReservasPendentes++;
                    break;
                }
            }
            dashboardViewModel.NomeView     = "Dashboard";
            dashboardViewModel.UsuarioEmail = ObterUsuarioSession();
            return(View(dashboardViewModel));
        }
Exemplo n.º 2
0
        [HttpGet] // marcar que as requisições que chegarem a ele são do tipo Get.... se for do tipo POST é necessário mudar HttpPost
        public IActionResult Dashboard()
        {
            try
            {
                var tipoUsuarioSessao = uint.Parse(ObterUsuarioTipoSession());
                if (tipoUsuarioSessao.Equals((uint)TiposUsuario.ADMINISTRADOR))
                {
                    var reservas = reservaRepository.ObterTodos();
                    DashboardViewModel dashboardViewModel = new DashboardViewModel();

                    foreach (var reserva in reservas)
                    {
                        switch (reserva.Status)
                        {
                        case (uint)StatusReserva.REPROVADO:
                            dashboardViewModel.PedidosReprovados++;
                            break;

                        case (uint)StatusReserva.APROVADO:
                            dashboardViewModel.PedidosAprovados++;
                            break;

                        default:
                            dashboardViewModel.PedidosPendentes++;
                            dashboardViewModel.Reservas.Add(reserva);
                            break;
                        }
                    }
                    dashboardViewModel.NomeView     = "Dashboard";
                    dashboardViewModel.UsuarioEmail = ObterUsuarioSession();

                    return(View(dashboardViewModel));
                }

                return(View("Erro", new RespostaViewModel()
                {
                    NomeView = "Dashboard",
                    Mensagem = "Acesso restrito"
                }));
            }
            catch (Exception e)
            {
                System.Console.WriteLine(e.StackTrace);
                return(View("Erro", new RespostaViewModel()
                {
                    NomeView = "Dashboard",
                    Mensagem = "Tempo esgotado. Faça login novamente!"
                }));
            }
        }
        public IActionResult Dashboard()
        {
            var ninguemLogado = string.IsNullOrEmpty(ObterUsuarioTipoSession());

            if (!ninguemLogado && (uint)TiposUsuario.ADMINISTRADOR == uint.Parse(ObterUsuarioTipoSession()))
            {
                var reservas = reservaRepository.ObterTodos();
                DashboardViewModel dashboardViewModel = new DashboardViewModel();

                foreach (var reserva in reservas)
                {
                    switch (reserva.Status)
                    {
                    case (uint)StatusReserva.APROVADO:
                        dashboardViewModel.ReservasAprovados++;
                        break;

                    case (uint)StatusReserva.REPROVADO:
                        dashboardViewModel.ReservasReprovados++;
                        break;

                    default:
                        dashboardViewModel.ReservasPendentes++;
                        dashboardViewModel.Reservas.Add(reserva);
                        break;
                    }
                }
                dashboardViewModel.NomeView     = "Dashboard";
                dashboardViewModel.UsuarioEmail = ObterUsuarioSession();

                return(View(dashboardViewModel));
            }
            else
            {
                return(View("Erro", new RespostaViewModel()
                {
                    NomeView = "Dashboard",
                    Mensagem = "Você não tem permissão para acessar o Dashboard"
                }));
            }
        }