public ActionResult EditCabecalho(cabecalhoAvaliacao c, Disciplina d, Turma t)
        {
            int idTurma2     = c.IdTurma;
            int idTurma3     = t.idTurma;
            int idDisciplina = c.IdDisciplina;

            if (perguntaModel.listarPerguntasPorDisciplinaPorDificuldade(idDisciplina, 3).Count < 10)
            {
                ViewBag.Insuficientes = "É necessário ao menos 10 perguntas dificeis desta disciplina para gerar uma avaliação.";
                return(View("PerguntasInsuficientes"));
            }
            else
            {
                if (perguntaModel.listarPerguntasPorDisciplinaPorDificuldade(idDisciplina, 2).Count < 10)
                {
                    ViewBag.Insuficientes = "É necessário ao menos 10 perguntas médias desta disciplina para gerar uma avaliação.";
                    return(View("PerguntasInsuficientes"));
                }
                else
                {
                    if (perguntaModel.listarPerguntasPorDisciplinaPorDificuldade(idDisciplina, 1).Count < 10)
                    {
                        ViewBag.Insuficientes = "É necessário ao menos 10 perguntas fáceis desta disciplina para gerar uma avaliação.";
                        return(View("PerguntasInsuficientes"));
                    }
                    else
                    {
                        return(RedirectToAction("GerarAvaliacaoAutomatica", c));
                    }
                }
            }
        }
        public ActionResult EditCabecalho()
        {
            cabecalho = new cabecalhoAvaliacao();

            int idDisciplina = 0;
            int idTurma      = 0;
            int idCurso      = 0;

            ViewBag.idCurso
                = new SelectList(cursoModel.todosCursos(),
                                 "idCurso", "Descricao", idCurso);

            ViewBag.idTurma
                = new SelectList(turmaModel.obterTurmasPorCurso(idCurso),
                                 "idTurma", "Identificacao", idTurma);

            ViewBag.idDisciplina
                = new SelectList(disciplinaModel.obterDisciplinaPorCurso(idCurso),
                                 "idDisciplina", "Descricao", idDisciplina);

            return(View(cabecalho));
        }
        public ActionResult GerarAvaliacaoAutomatica(cabecalhoAvaliacao c)
        {
            int       id  = 0;
            Atividade atA = new Atividade();

            ViewBag.Titulo = "Nova Avaliacao Automatica";

            int idDisciplina = c.IdDisciplina;
            int idTurma      = c.IdTurma;


            if (id != 0)
            {
                atA            = atividadeModel.obterAtividade(id);
                idDisciplina   = atA.idDisciplina;
                idTurma        = atA.idTurma;
                ViewBag.Titulo = "Editar Atividade";
            }


            listaAlunos = alunoModel.listarAlunosPorTurma(idTurma);

            for (int i = 0; i < listaAlunos.Count; i++)
            {
                int   idAlunoA = listaAlunos[i].idAluno;
                Aluno a        = alunoModel.obterAluno(idAlunoA);

                Atividade at  = new Atividade();
                Atividade at2 = atividadeModel.obterAtividade(4);

                at.idDisciplina     = c.IdDisciplina;
                at.idTurma          = c.IdTurma;
                at.Identificacao    = c.Identificacao;
                at.DataAbertura     = c.DataAbertura;
                at.DataEncerramento = c.DataEncerramento;
                at.Titulo           = c.Titulo;
                at.Descricao        = c.Descricao;

                at.idStatus = 1; //Definindo Atividade como aberta
                at.idTipo   = 2; //Definindo tipo como AVALIAÇÂO

                string erro = null;
                erro = atividadeModel.adicionarAtividade(at);

                ///////////////////// INSERIR PERGUTAS NA ATIVIDADE //////////////////////////

                //Me retorna a lista de perguntas para adicionar na prova
                prepararSorteio(idAlunoA, c.IdDisciplina);
                for (int j = 0; j < listaFinalPerguntas.Count; j++)
                {
                    Pergunta_Atividade pa = new Pergunta_Atividade();

                    pa.idAtividade = at.idAtividade;
                    pa.idPergunta  = listaFinalPerguntas[j].idPergunta;

                    erro = perguntaAtividadeModel.adicionarPerguntaAtividade(pa);
                }

                Aluno_Atividade aa = new Aluno_Atividade();
                aa.idAluno     = idAlunoA;
                aa.idAtividade = at.idAtividade;
                aa.idStatus    = 1;
                erro           = alunoAtividadeModel.adicionarAlunoAtividade(aa);
            }

            return(RedirectToAction("IndexAvaliacao"));
        }