public ActionResult CriarAvaliacao(AvaliacaoTutoria novaAvaliacao, int idModulo) { MAvaliacaoTutoria mAvaliacaoTutoria = new MAvaliacaoTutoria(); Grupo grupo = new MGrupo().BringOne(c => c.idGrupo == novaAvaliacao.idGrupo); List <InscricaoTurma> alunosInscritos = grupo.InscricaoTurma.ToList(); MControleNotas mControleNotas = new MControleNotas(); foreach (var inscrito in alunosInscritos) { ControleNotas controleNotas = mControleNotas.BringOne(c => (c.idInscricaoTurma == inscrito.idInscricaoTurma) && (c.idModulo == idModulo)); if (controleNotas == null) { controleNotas.idModulo = idModulo; controleNotas.idInscricaoTurma = inscrito.idInscricaoTurma; mControleNotas.Add(controleNotas); } AvaliacaoTutoria avaliacaoAluno = new AvaliacaoTutoria(); avaliacaoAluno.dtFim = novaAvaliacao.dtFim; avaliacaoAluno.dtInicio = novaAvaliacao.dtInicio; avaliacaoAluno.idControleNotas = controleNotas.idControleNotas; avaliacaoAluno.idGrupo = grupo.idGrupo; avaliacaoAluno.idProblemaxMed = novaAvaliacao.idProblemaxMed; mAvaliacaoTutoria.Add(avaliacaoAluno); } List <AvaliacaoTutoria> avaliacoesTutoria = mAvaliacaoTutoria.Bring(c => (c.idGrupo == grupo.idGrupo) && (c.idProblemaxMed == novaAvaliacao.idProblemaxMed)); TempData["avaliacoes"] = avaliacoesTutoria; return(RedirectToAction("SelecionarAluno", "GerenciarProblemasMinistados")); }
public ActionResult CriarAvaliacao(AvaliacaoTutoria novaAvaliacao, int idModulo) { MAvaliacaoTutoria mAvaliacaoTutoria = new MAvaliacaoTutoria(); Grupo grupo = new MGrupo().BringOne(c => c.idGrupo == novaAvaliacao.idGrupo); List <InscricaoTurma> alunosInscritos = grupo.InscricaoTurma.ToList(); MControleNotas mControleNotas = new MControleNotas(); foreach (var inscrito in alunosInscritos) { ControleNotas controleNotas = mControleNotas.BringOne(c => (c.idInscricaoTurma == inscrito.idInscricaoTurma) && (c.idModulo == idModulo)); if (controleNotas == null) { controleNotas.idModulo = idModulo; controleNotas.idInscricaoTurma = inscrito.idInscricaoTurma; mControleNotas.Add(controleNotas); } var teste = (inscrito.ControleNotas.Select(c => c.AvaliacaoTutoria.Where(x => x.idProblemaxMed == novaAvaliacao.idProblemaxMed))).FirstOrDefault().FirstOrDefault(); AvaliacaoTutoria avaliacaoAluno = teste; if (avaliacaoAluno == null) { avaliacaoAluno = new AvaliacaoTutoria(); avaliacaoAluno.dtFim = novaAvaliacao.dtFim; avaliacaoAluno.dtInicio = novaAvaliacao.dtInicio; avaliacaoAluno.idControleNotas = controleNotas.idControleNotas; avaliacaoAluno.idGrupo = grupo.idGrupo; avaliacaoAluno.idProblemaxMed = novaAvaliacao.idProblemaxMed; mAvaliacaoTutoria.Add(avaliacaoAluno); } else { avaliacaoAluno.dtFim = novaAvaliacao.dtFim; avaliacaoAluno.dtInicio = novaAvaliacao.dtInicio; avaliacaoAluno.idControleNotas = controleNotas.idControleNotas; avaliacaoAluno.idGrupo = grupo.idGrupo; avaliacaoAluno.idProblemaxMed = novaAvaliacao.idProblemaxMed; mAvaliacaoTutoria.Update(avaliacaoAluno); } } List <AvaliacaoTutoria> avaliacoesTutoria = mAvaliacaoTutoria.Bring(c => (c.idGrupo == grupo.idGrupo) && (c.idProblemaxMed == novaAvaliacao.idProblemaxMed)); return(RedirectToAction("SelecionarAluno", "GerenciarProblemasMinistrados", new { idProblemaXMed = novaAvaliacao.idProblemaxMed, idGrupo = grupo.idGrupo })); }
public ActionResult SelecionarAluno(int idProblemaXMed, int idGrupo) { var mAvaliacaoTutoria = new MAvaliacaoTutoria(); List <AvaliacaoTutoria> avaliacoes = mAvaliacaoTutoria.Bring(c => (c.idProblemaxMed == idProblemaXMed) && (c.idGrupo == idGrupo)); ListarAvaliacaoTutoriaViewModel viewModel = new ListarAvaliacaoTutoriaViewModel(); viewModel.alunosAvaliados = new List <AvaliacaoTutoria>(); viewModel.alunosNaoAvaliados = new List <AvaliacaoTutoria>(); Grupo grupo = new MGrupo().BringOne(c => c.idGrupo == idGrupo); Problema problema = new MProblemaXMed().BringOne(c => c.idProblemaxMed == idProblemaXMed).Problema; ViewBag.Informativo = problema.tituloProblema + " - " + grupo.descGrupo; if (avaliacoes.Count == 0) { return(RedirectToAction("MontarFichaAvaliativa", new { idProblemaXMed = idProblemaXMed, idGrupo = idGrupo })); } int idModulo = (int)avaliacoes.FirstOrDefault().ControleNotas.idModulo; DateTime dataFimAvaliacao = avaliacoes.FirstOrDefault().dtFim; DateTime dataInicioAvaliacao = avaliacoes.FirstOrDefault().dtInicio; if (grupo.InscricaoTurma.Count != avaliacoes.Count) { List <InscricaoTurma> alunosInscritos = grupo.InscricaoTurma.ToList(); MControleNotas mControleNotas = new MControleNotas(); foreach (InscricaoTurma alunoInscrito in alunosInscritos) { ControleNotas controleNotas = alunoInscrito.ControleNotas.SingleOrDefault(c => c.idModulo == idModulo); if (controleNotas == null) { controleNotas.idModulo = idModulo; controleNotas.idInscricaoTurma = alunoInscrito.idInscricaoTurma; mControleNotas.Add(controleNotas); AvaliacaoTutoria avaliacaoAluno = new AvaliacaoTutoria(); avaliacaoAluno.dtFim = dataFimAvaliacao; avaliacaoAluno.dtInicio = dataInicioAvaliacao; avaliacaoAluno.idControleNotas = controleNotas.idControleNotas; avaliacaoAluno.idGrupo = grupo.idGrupo; avaliacaoAluno.idProblemaxMed = idProblemaXMed; mAvaliacaoTutoria.Add(avaliacaoAluno); } else { if (alunoInscrito.ControleNotas.SingleOrDefault(c => c.idModulo == idModulo).AvaliacaoTutoria.SingleOrDefault(c => c.idProblemaxMed == idProblemaXMed) == null) { AvaliacaoTutoria avaliacaoAluno = new AvaliacaoTutoria(); avaliacaoAluno.dtFim = dataFimAvaliacao; avaliacaoAluno.dtInicio = dataInicioAvaliacao; avaliacaoAluno.idControleNotas = controleNotas.idControleNotas; avaliacaoAluno.idGrupo = grupo.idGrupo; avaliacaoAluno.idProblemaxMed = idProblemaXMed; mAvaliacaoTutoria.Add(avaliacaoAluno); } } } } int idUsuario = Convert.ToInt32(HttpContext.User.Identity.Name); Usuario user = new MUsuario().BringOne(c => c.idUsuario == idUsuario); Professor prof = user.Professor.First(); if (grupo.idProfessor != prof.idProfessor) { return(View(viewModel)); } if (avaliacoes == null) { avaliacoes = new List <AvaliacaoTutoria>(); } foreach (AvaliacaoTutoria item in avaliacoes) { if (item.FichaAvaliacao.Where(c => c.idAvaliador == idUsuario).FirstOrDefault() != null) { if (item.FichaAvaliacao.Where(c => c.idAvaliador == idUsuario).FirstOrDefault().PerguntaXFicha.Where(c => c.marcado != null).Count() == 9) { viewModel.alunosAvaliados.Add(item); } else { viewModel.alunosNaoAvaliados.Add(item); } } else { viewModel.alunosNaoAvaliados.Add(item); } } return(View(viewModel)); }