public ActionResult ConsultarMaterias()
        {
            try
            {
                List <MateriaConsultaViewModel> lista = new List <MateriaConsultaViewModel>();
                MateriaRepository materiaRep          = new MateriaRepository();

                foreach (Materia materia in materiaRep.FindAll())
                {
                    lista.Add(new MateriaConsultaViewModel()
                    {
                        IdMateria  = materia.IdMateria,
                        Nome       = materia.Nome,
                        PesoProva1 = materia.PesoProva1,
                        PesoProva2 = materia.PesoProva2,
                        PesoProva3 = materia.PesoProva3
                    });
                }

                return(Json(lista, JsonRequestBehavior.AllowGet));
            }
            catch (Exception e)
            {
                return(Json(e.Message, JsonRequestBehavior.AllowGet));
            }
        }
示例#2
0
        public void Simular()
        {
            MateriaRepository      materiaRep      = new MateriaRepository();
            AlunoRepository        alunoRep        = new AlunoRepository();
            MateriaAlunoRepository materiaAlunoRep = new MateriaAlunoRepository();
            Random random = new Random();

            //Exclui a simulação existente para incluir a nova(1(uma) sumulação por vez)
            foreach (MateriaAluno ma in materiaAlunoRep.FindAll())
            {
                materiaAlunoRep.Delete(ma);
            }

            //Faz a nova simulação
            foreach (Materia materia in materiaRep.FindAll())
            {
                foreach (Aluno aluno in alunoRep.FindAll())
                {
                    MateriaAluno ma = new MateriaAluno();
                    ma.IdMateria = materia.IdMateria;
                    ma.IdAluno   = aluno.IdAluno;

                    ma.NotaProva1 = Math.Round(Convert.ToDecimal(random.NextDouble() * 10), 1);
                    ma.NotaProva2 = Math.Round(Convert.ToDecimal(random.NextDouble() * 10), 1);
                    ma.NotaProva3 = Math.Round(Convert.ToDecimal(random.NextDouble() * 10), 1);

                    //calcula a média ponderada das notas para saber se precisa
                    //simular a prova final
                    decimal mediaPonderada = CalcularMediaPonderada(
                        ma.NotaProva1, ma.NotaProva2, ma.NotaProva3,
                        materia.PesoProva1, materia.PesoProva2, materia.PesoProva3);


                    if (mediaPonderada > 4.0M && mediaPonderada < 6.0M)
                    {
                        //simula a prova final
                        ma.NotaProvaFinal = Math.Round(Convert.ToDecimal(random.NextDouble() * 10), 1);
                    }

                    materiaAlunoRep.Insert(ma);
                }
            }
        }