Exemple #1
0
        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));
        }