public ActionResult Edit(int id) { if (Roles.IsUserInRole(User.Identity.Name, "Professor")) { Pergunta p = new Pergunta(); ViewBag.Titulo = "Nova Pergunta"; int idCurso = 1; int idDisciplina = 1; int idTema = 1; int idNivelDificuldadeSelecionado = 1; int correta = 1; if (id != 0) { p = perguntaModel.obterPergunta(id); idCurso = p.Tema.Disciplina.idCurso; idDisciplina = p.Tema.idDisciplina; idTema = p.idTema; idNivelDificuldadeSelecionado = p.idNivelDificuldade; correta = p.Correta; ViewBag.Titulo = "Editar Pergunta"; } ViewBag.idCurso = new SelectList(cursoModel.todosCursos(), "idCurso", "Descricao", idCurso); ViewBag.idDisciplina = new SelectList(disciplinaModel.obterDisciplinaPorCurso(idCurso), "idDisciplina", "Descricao", idDisciplina); ViewBag.idTema = new SelectList(temaModel.obterTemasPorDisciplina(idCurso), "idTema", "Descricao", idTema); ViewBag.idNivelDificuldade = new SelectList(nivelDificuldadeModel.todosNiveisDificuldade(), "idNivelDificuldade", "Descricao", idNivelDificuldadeSelecionado); ViewBag.Correta = new SelectList(alternativaModel.obterAlternativasPorPergunta(id), "idAlternativa", "Descricao", correta); return(View(p)); } return(Redirect("/Shared/Restrito")); }
public ActionResult EditResposta(int idAlunoAtividade, int idPergunta) { if (Roles.IsUserInRole(User.Identity.Name, "Aluno")) { Questao_Resposta qr = new Questao_Resposta(); Questao_Resposta q = questaoRespostaModel.verficaRespostaAluno(idAlunoAtividade, idPergunta); int idQuestaoResposta = 1; if (q == null) { idQuestaoResposta = 0; } else { idQuestaoResposta = questaoRespostaModel.verficaRespostaAluno(idAlunoAtividade, idPergunta).idQuestaoResposta; } qr.idAlunoAtividade = idAlunoAtividade; qr.idPergunta = idPergunta; Pergunta p = perguntaModel.obterPergunta(idPergunta); ViewBag.Enunciado = p.Enunciado; int idAlternativa = 1; if (idQuestaoResposta != 0) { qr = questaoRespostaModel.obterQuestaoResposta(idQuestaoResposta); idAlternativa = qr.idAlternativa; } ViewBag.idAlternativa = new SelectList(alternativaModel.listarAlternativasPorPergunta(idPergunta), "idAlternativa", "Descricao", idAlternativa); ViewBag.Pergunta = p.Enunciado; return(View(qr)); } return(Redirect("/Shared/Restrito")); }
public ActionResult prepararSorteio() { int idAluno = 1; errosPorTema(idAluno); NumerosSorteados = new List <int>(); int idTema1 = temaModel.obterTemaPorDescricao(ViewBag.listaErradasTema[0].Tema).idTema; int idTema2 = temaModel.obterTemaPorDescricao(ViewBag.listaErradasTema[1].Tema).idTema; int idTema3 = temaModel.obterTemaPorDescricao(ViewBag.listaErradasTema[2].Tema).idTema; //================== 1º TEMA QUE O ALUNO MAIS ERROU ==================================================== //----------------------- DIFICEIS -------------------------------------------------- List <Pergunta> PerguntasDificeisASortearT1 = perguntaModel.listarPerguntasParaSorteio(idTema1, 3); // 3 = Nivel de Dificuldade DIFICIL contadorPergunta = PerguntasDificeisASortearT1.Count; nPerguntas = 3; Sortear(contadorPergunta, nPerguntas); var listaPerguntasDIficeisT1 = new List <Pergunta>(); for (int i = 0; i < 3; i++) { int idPerguntaSorteada = PerguntasDificeisASortearT1[NumerosSorteados[i]].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaPerguntasDIficeisT1.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //------ MEDIAS ------------------------------------------------------------------------------------ List <Pergunta> PerguntasMediasASortearT1 = perguntaModel.listarPerguntasParaSorteio(idTema1, 2); // 2 = Nivel de Dificuldade MEDIO contadorPergunta = PerguntasMediasASortearT1.Count; nPerguntas = 1; Sortear(contadorPergunta, nPerguntas); var listaPerguntasMediasT1 = new List <Pergunta>(); for (int i = 0; i < 1; i++) { int idPerguntaSorteada = PerguntasMediasASortearT1[NumerosSorteados[i]].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaPerguntasMediasT1.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //-------- FACEIS ---------------------------------------------------------------------------------- List <Pergunta> PerguntasFaceisASortearT1 = perguntaModel.listarPerguntasParaSorteio(idTema1, 1); // 1 = Nivel de Dificuldade FACIL contadorPergunta = PerguntasFaceisASortearT1.Count; nPerguntas = 1; Sortear(contadorPergunta, nPerguntas); var listaPerguntasFaceisT1 = new List <Pergunta>(); for (int i = 0; i < 1; i++) { int idPerguntaSorteada = PerguntasDificeisASortearT1[NumerosSorteados[i]].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaPerguntasFaceisT1.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //================== 2º TEMA QUE O ALUNO MAIS ERROU ==================================================== //----------------------- DIFICEIS -------------------------------------------------- List <Pergunta> PerguntasDificeisASortearT2 = perguntaModel.listarPerguntasParaSorteio(idTema1, 3); // 3 = Nivel de Dificuldade DIFICIL contadorPergunta = PerguntasDificeisASortearT2.Count; nPerguntas = 1; Sortear(contadorPergunta, nPerguntas); var listaPerguntasDificeisT2 = new List <Pergunta>(); for (int i = 0; i < 1; i++) { int idPerguntaSorteada = PerguntasDificeisASortearT1[NumerosSorteados[i]].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaPerguntasDificeisT2.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //----------------------- MEDIAS -------------------------------------------------- List <Pergunta> PerguntasMediasASortearT2 = perguntaModel.listarPerguntasParaSorteio(idTema1, 2); // 2 = Nivel de Dificuldade MEDIO contadorPergunta = PerguntasMediasASortearT2.Count; nPerguntas = 1; Sortear(contadorPergunta, nPerguntas); var listaPerguntasMediasT2 = new List <Pergunta>(); for (int i = 0; i < 1; i++) { int idPerguntaSorteada = PerguntasDificeisASortearT1[NumerosSorteados[i]].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaPerguntasMediasT2.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //----------------------- FACEIS -------------------------------------------------- List <Pergunta> PerguntasFaceisASortearT2 = perguntaModel.listarPerguntasParaSorteio(idTema1, 1); // 1 = Nivel de Dificuldade FACIL contadorPergunta = PerguntasFaceisASortearT2.Count; nPerguntas = 1; Sortear(contadorPergunta, nPerguntas); var listaPerguntasFaceisT2 = new List <Pergunta>(); for (int i = 0; i < 1; i++) { int idPerguntaSorteada = PerguntasDificeisASortearT1[NumerosSorteados[i]].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaPerguntasFaceisT2.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //================== 3º TEMA QUE O ALUNO MAIS ERROU ==================================================== //----------------------- MEDIAS -------------------------------------------------- List <Pergunta> PerguntasMediasASortearT3 = perguntaModel.listarPerguntasParaSorteio(idTema1, 2); // 2 = Nivel de Dificuldade MEDIO contadorPergunta = PerguntasMediasASortearT3.Count; nPerguntas = 1; Sortear(contadorPergunta, nPerguntas); var listaPerguntasMediasT3 = new List <Pergunta>(); for (int i = 0; i < 1; i++) { int idPerguntaSorteada = PerguntasDificeisASortearT1[NumerosSorteados[i]].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaPerguntasMediasT3.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //----------------------- FACEIS -------------------------------------------------- List <Pergunta> PerguntasFaceisASortearT3 = perguntaModel.listarPerguntasParaSorteio(idTema1, 1); // 1 = Nivel de Dificuldade FACIL contadorPergunta = PerguntasFaceisASortearT3.Count; nPerguntas = 1; Sortear(contadorPergunta, nPerguntas); var listaPerguntasFaceisT3 = new List <Pergunta>(); for (int i = 0; i < 1; i++) { int idPerguntaSorteada = PerguntasDificeisASortearT1[NumerosSorteados[i]].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaPerguntasMediasT2.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //------------------------ MONTA LISTA COM PERGUNTAS PARA A ATIVIDADE-------------------------- var listaFinalPerguntas = new List <Pergunta>(); // Adiciona perguntas do tema 1 //DIFICEIS for (int i = 0; i < listaPerguntasDIficeisT1.Count; i++) { int idPerguntaSorteada = listaPerguntasDIficeisT1[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaFinalPerguntas.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //MEDIAS for (int i = 0; i < listaPerguntasMediasT1.Count; i++) { int idPerguntaSorteada = listaPerguntasMediasT1[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaFinalPerguntas.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //FACEIS for (int i = 0; i < listaPerguntasFaceisT1.Count; i++) { int idPerguntaSorteada = listaPerguntasFaceisT1[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaFinalPerguntas.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } // Adiciona perguntas do Tema 2 //DIFICEIS for (int i = 0; i < listaPerguntasDificeisT2.Count; i++) { int idPerguntaSorteada = listaPerguntasDificeisT2[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaFinalPerguntas.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //MEDIAS for (int i = 0; i < listaPerguntasMediasT2.Count; i++) { int idPerguntaSorteada = listaPerguntasMediasT2[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaFinalPerguntas.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //FACEIS for (int i = 0; i < listaPerguntasFaceisT2.Count; i++) { int idPerguntaSorteada = listaPerguntasFaceisT2[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaFinalPerguntas.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } // Adiciona perguntas do Tema 2 //MEDIAS for (int i = 0; i < listaPerguntasMediasT3.Count; i++) { int idPerguntaSorteada = listaPerguntasMediasT3[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaFinalPerguntas.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } //FACEIS for (int i = 0; i < listaPerguntasFaceisT3.Count; i++) { int idPerguntaSorteada = listaPerguntasFaceisT3[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPerguntaSorteada); listaFinalPerguntas.Add(new Pergunta() { idPergunta = pergunta.idPergunta, idTema = pergunta.idTema, idNivelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } var testeView = new List <perguntasProva>(); for (int i = 0; i < listaFinalPerguntas.Count; i++) { int idPergunta = listaFinalPerguntas[i].idPergunta; Pergunta pergunta = perguntaModel.obterPergunta(idPergunta); testeView.Add(new perguntasProva() { IdPergunta = pergunta.idPergunta, IdTema = pergunta.idTema, IdNIvelDificuldade = pergunta.idNivelDificuldade, Titulo = pergunta.Titulo, Enunciado = pergunta.Enunciado, Identificacao = pergunta.Identificacao, Correta = pergunta.Correta }); } return(View(testeView)); }