public ActionResult Index()
        {
            if (Session["AlunoLogado"] != null)
            {
                alunoModel = Session["AlunoLogado"] as Aluno;

                TestesModel testeModel = db.Testes.Where(m => m.IdAluno == alunoModel.IdAluno).FirstOrDefault();

                if (testeModel != null)
                {
                    ResultadoDAO   resultadoDAO = new ResultadoDAO();
                    ResultadoModel resultado    = resultadoDAO.ConsultarResultado(testeModel.IdResultado);
                    //TempData["ResultadoModel"] = resultado;
                    int id = resultado.IdResposta;

                    return(RedirectToAction("ExibirCurso", "Resultado", new { id = resultado.IdResposta }));
                    //return View("ExibirCurso","Resultado", resultado.IdResposta);
                }
                else
                {
                    FrasesModel perguntas = new FrasesModel();
                    FrasesDAO   dao       = new FrasesDAO();
                    perguntas.ListaFrases = dao.ListarTodas();
                    //Caso não de, usar session
                    Session["AlunoLogado"] = alunoModel;
                    return(View(perguntas));
                }
            }
            else
            {
                TempData["Mensagem"] = "Sessão Expirada, efetue o login novamente!";
                return(RedirectToAction("Index", "Aluno"));
            }
        }
        public ActionResult ExibirCurso(int id)
        {
            ResultadoDAO       resultadoDao   = new ResultadoDAO();
            RespostasBusiness  repBusiness    = new RespostasBusiness();
            ResultadoModel     resultadoModel = new ResultadoModel();
            IList <CursoModel> cursos         = new List <CursoModel>();

            //chart
            resultadoModel = resultadoDao.ConsultarResultado(id);
            //Enviando Model dos Cursos


            ViewData["ResultadoModel"] = resultadoModel;
            cursos = repBusiness.ResultadoCursos(resultadoModel);

            ViewData["ListaPasseios"] = new PasseioAlunoBusiness().ListaPasseioCategoria(cursos);

            return(View(cursos));
        }
        //Calculando Respostas do Usuario
        public ResultadoModel ResultadoTeste(String escolhasTeste, Aluno alunoModel)
        {
            var objJson = JArray.Parse(escolhasTeste);

            int[] realista      = { 1, 0 };
            int[] investigativo = { 2, 0 };
            int[] artistico     = { 3, 0 };
            int[] social        = { 4, 0 };
            int[] empreendedor  = { 5, 0 };
            int[] convencional  = { 6, 0 };

            foreach (var itens in objJson)
            {
                if (itens.ToObject <int>() == 1)
                {
                    realista[1]++;
                }
                if (itens.ToObject <int>() == 2)
                {
                    realista[1]++;
                }
                if (itens.ToObject <int>() == 3)
                {
                    realista[1]++;
                }
                if (itens.ToObject <int>() == 4)
                {
                    realista[1]++;
                }
                if (itens.ToObject <int>() == 5)
                {
                    investigativo[1]++;
                }
                if (itens.ToObject <int>() == 6)
                {
                    investigativo[1]++;
                }
                if (itens.ToObject <int>() == 7)
                {
                    investigativo[1]++;
                }
                if (itens.ToObject <int>() == 8)
                {
                    investigativo[1]++;
                }
                if (itens.ToObject <int>() == 9)
                {
                    artistico[1]++;
                }
                if (itens.ToObject <int>() == 10)
                {
                    artistico[1]++;
                }
                if (itens.ToObject <int>() == 11)
                {
                    artistico[1]++;
                }
                if (itens.ToObject <int>() == 12)
                {
                    artistico[1]++;
                }
                if (itens.ToObject <int>() == 13)
                {
                    social[1]++;
                }
                if (itens.ToObject <int>() == 14)
                {
                    social[1]++;
                }
                if (itens.ToObject <int>() == 15)
                {
                    social[1]++;
                }
                if (itens.ToObject <int>() == 16)
                {
                    social[1]++;
                }
                if (itens.ToObject <int>() == 17)
                {
                    empreendedor[1]++;
                }
                if (itens.ToObject <int>() == 18)
                {
                    empreendedor[1]++;
                }
                if (itens.ToObject <int>() == 19)
                {
                    empreendedor[1]++;
                }
                if (itens.ToObject <int>() == 20)
                {
                    empreendedor[1]++;
                }
                if (itens.ToObject <int>() == 21)
                {
                    convencional[1]++;
                }
                if (itens.ToObject <int>() == 22)
                {
                    convencional[1]++;
                }
                if (itens.ToObject <int>() == 23)
                {
                    convencional[1]++;
                }
                if (itens.ToObject <int>() == 24)
                {
                    convencional[1]++;
                }
            }

            ResultadoDAO resultadoDao = new ResultadoDAO();

            ResultadoModel model = new ResultadoModel
            {
                IdAluno    = alunoModel.IdAluno,
                Categoria1 = realista[1],
                Categoria2 = investigativo[1],
                Categoria3 = artistico[1],
                Categoria4 = social[1],
                Categoria5 = empreendedor[1],
                Categoria6 = convencional[1],
            };

            resultadoDao.Inserir(model);

            return(model);
        }
        public ActionResult AdicionarResultado(Resultado r)
        {
            Jogo j = JogoDAO.Jogo(r.CodJogo);

            j.Ocorreu = 1;
            JogoDAO.Altera(j);

            // Calculo de pontos de cada usuario
            foreach (Votacao v in VotacaoDAO.ListaDeVotosDoJogo(j.Id))
            {
                Usuario     u = UsuarioDAO.returnUsuario(v.CodUsuario);
                Notificacao n = new Notificacao();

                n.pontosGanhos = u.qntsPontos;

                if (r.QtdGolA > r.QtdGolB && v.CodTimeVotado == j.CodTimeA)
                {
                    if (j.QtdVotosTimeA >= j.QtdVotosTimeB && j.QtdVotosTimeA >= j.QtdVotosEmpate)
                    {
                        u.qntsPontos += 100;
                    }
                    if (j.QtdVotosTimeA > j.QtdVotosTimeB && j.QtdVotosTimeA < j.QtdVotosEmpate)
                    {
                        u.qntsPontos += 300;
                    }
                    if (j.QtdVotosTimeA < j.QtdVotosTimeB && j.QtdVotosTimeA > j.QtdVotosEmpate)
                    {
                        u.qntsPontos += 300;
                    }
                    if (j.QtdVotosTimeA < j.QtdVotosTimeB && j.QtdVotosTimeA < j.QtdVotosEmpate)
                    {
                        u.qntsPontos += 500;
                    }
                }
                if (r.QtdGolA < r.QtdGolB && v.CodTimeVotado == j.CodTimeB)
                {
                    if (j.QtdVotosTimeB >= j.QtdVotosTimeA && j.QtdVotosTimeB >= j.QtdVotosEmpate)
                    {
                        u.qntsPontos += 100;
                    }
                    if (j.QtdVotosTimeB > j.QtdVotosTimeA && j.QtdVotosTimeB < j.QtdVotosEmpate)
                    {
                        u.qntsPontos += 300;
                    }
                    if (j.QtdVotosTimeB < j.QtdVotosTimeA && j.QtdVotosTimeB > j.QtdVotosEmpate)
                    {
                        u.qntsPontos += 300;
                    }
                    if (j.QtdVotosTimeB < j.QtdVotosTimeA && j.QtdVotosTimeB < j.QtdVotosEmpate)
                    {
                        u.qntsPontos += 500;
                    }
                }
                if (r.QtdGolA == r.QtdGolB && v.CodTimeVotado == 0)
                {
                    if (j.QtdVotosEmpate >= j.QtdVotosTimeA && j.QtdVotosEmpate >= j.QtdVotosTimeB)
                    {
                        u.qntsPontos += 100;
                    }
                    if (j.QtdVotosEmpate > j.QtdVotosTimeA && j.QtdVotosEmpate < j.QtdVotosTimeB)
                    {
                        u.qntsPontos += 300;
                    }
                    if (j.QtdVotosEmpate < j.QtdVotosTimeA && j.QtdVotosEmpate > j.QtdVotosTimeB)
                    {
                        u.qntsPontos += 300;
                    }
                    if (j.QtdVotosEmpate < j.QtdVotosTimeA && j.QtdVotosEmpate < j.QtdVotosTimeB)
                    {
                        u.qntsPontos += 500;
                    }
                }

                n.pontosGanhos = u.qntsPontos - n.pontosGanhos;
                n.data         = DateTime.Now;
                n.CodJogo      = j.Id;
                n.CodUsuario   = u.Id;

                NotificacaoDAO.Adicionar(n);
                UsuarioDAO.Alterar(u);
            }

            ResultadoDAO.Adiciona(r);
            return(RedirectToAction("AdicionaResultado", "Admin"));
        }