Пример #1
0
        public ActionResult AvaliacoesInterpares(int idGrupo, int idProblemaXMed)
        {
            List <AvaliacaoTutoria> avaliacoes = new MAvaliacaoTutoria().Bring(c => (c.idProblemaxMed == idProblemaXMed) && (c.idGrupo == idGrupo));

            ViewBag.descProblema = new MProblemaXMed().BringOne(c => c.idProblemaxMed == idProblemaXMed).Problema.tituloProblema;
            ListarAvaliacaoTutoriaViewModel viewModel = new ListarAvaliacaoTutoriaViewModel();

            viewModel.alunosAvaliados    = new List <AvaliacaoTutoria>();
            viewModel.alunosNaoAvaliados = new List <AvaliacaoTutoria>();
            Grupo grupo     = new MGrupo().BringOne(c => c.idGrupo == idGrupo);
            int   idUsuario = Convert.ToInt32(HttpContext.User.Identity.Name);

            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));
        }
        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));
        }