private List <MathChartDataModel> BuscaGraficoCA(string CodigoTurmaEol, string Proficiency, string Term, string CodigoCurso)
        {
            List <PollReportMathStudentItem> result = new List <PollReportMathStudentItem>();

            List <MathChartDataModel> graficos = new List <MathChartDataModel>();


            PollMatematica poll = new PollMatematica(_config);

            var listaAlunosTurma = poll.BuscarAlunosTurmaRelatorioMatematicaCA(CodigoTurmaEol, Proficiency, Term);

            for (int ordem = 1; ordem < 5; ordem++)
            {
                MathChartDataModel item = new MathChartDataModel();

                switch (ordem)
                {
                case 1:
                    item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true);
                    item.Idea = new List <int> {
                        listaAlunosTurma.Where(p => p.Ordem1Ideia != null && p.Ordem1Ideia.Equals("A")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem1Ideia != null && p.Ordem1Ideia.Equals("E")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem1Ideia != null && p.Ordem1Ideia.Equals("NR")).Count()
                    };
                    item.Result = new List <int> {
                        listaAlunosTurma.Where(p => p.Ordem1Resultado != null && p.Ordem1Resultado.Equals("A")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem1Resultado != null && p.Ordem1Resultado.Equals("E")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem1Resultado != null && p.Ordem1Resultado.Equals("NR")).Count()
                    };

                    graficos.Add(item);
                    break;

                case 2:
                    item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true);
                    item.Idea = new List <int> {
                        listaAlunosTurma.Where(p => p.Ordem2Ideia != null && p.Ordem2Ideia.Equals("A")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem2Ideia != null && p.Ordem2Ideia.Equals("E")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem2Ideia != null && p.Ordem2Ideia.Equals("NR")).Count()
                    };
                    item.Result = new List <int> {
                        listaAlunosTurma.Where(p => p.Ordem2Resultado != null && p.Ordem2Resultado.Equals("A")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem2Resultado != null && p.Ordem2Resultado.Equals("E")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem2Resultado != null && p.Ordem2Resultado.Equals("NR")).Count()
                    };

                    graficos.Add(item);
                    break;

                case 3:
                    if (!CodigoCurso.Equals("2"))
                    {
                        item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true);
                        item.Idea = new List <int> {
                            listaAlunosTurma.Where(p => p.Ordem3Ideia != null && p.Ordem3Ideia.Equals("A")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem3Ideia != null && p.Ordem3Ideia.Equals("E")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem3Ideia != null && p.Ordem3Ideia.Equals("NR")).Count()
                        };
                        item.Result = new List <int> {
                            listaAlunosTurma.Where(p => p.Ordem3Resultado != null && p.Ordem3Resultado.Equals("A")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem3Resultado != null && p.Ordem3Resultado.Equals("E")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem3Resultado != null && p.Ordem3Resultado.Equals("NR")).Count()
                        };

                        graficos.Add(item);
                    }
                    break;

                case 4:
                    if (!CodigoCurso.Equals("1") && !CodigoCurso.Equals("2") && !CodigoCurso.Equals("3"))
                    {
                        item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true);
                        item.Idea = new List <int> {
                            listaAlunosTurma.Where(p => p.Ordem4Ideia != null && p.Ordem4Ideia.Equals("A")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem4Ideia != null && p.Ordem4Ideia.Equals("E")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem4Ideia != null && p.Ordem4Ideia.Equals("NR")).Count()
                        };
                        item.Result = new List <int> {
                            listaAlunosTurma.Where(p => p.Ordem4Resultado != null && p.Ordem4Resultado.Equals("A")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem4Resultado != null && p.Ordem4Resultado.Equals("E")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem4Resultado != null && p.Ordem4Resultado.Equals("NR")).Count()
                        };

                        graficos.Add(item);
                    }
                    break;
                }
            }
            return(graficos);
        }
        private List <PollReportMathStudentItem> BuscaDadosCA(string CodigoTurmaEol, string Proficiency, string Term, string codigoEscola, string CodigoCurso)
        {
            List <PollReportMathStudentItem> result = new List <PollReportMathStudentItem>();

            PollMatematica poll = new PollMatematica(_config);

            var listaAlunosTurma = poll.BuscarAlunosTurmaRelatorioMatematicaCA(CodigoTurmaEol,
                                                                               Proficiency,
                                                                               Term);

            foreach (var sondagem in listaAlunosTurma)
            {
                List <MathStudentItemResult> pollTotal = new List <MathStudentItemResult>();

                result.Add(
                    new PollReportMathStudentItem()
                {
                    Code        = sondagem.AlunoEolCode,
                    StudentName = sondagem.AlunoNome,
                    Poll        = pollTotal
                }
                    );

                string ano = "";
                for (int ordem = 1; ordem < 5; ordem++)
                {
                    MathStudentItemResult item = new MathStudentItemResult();
                    string ideia     = "";
                    string resultado = "";

                    switch (ordem)
                    {
                    case 1:
                        ideia       = ConverteTextoPollMatematica(sondagem.Ordem1Ideia);
                        resultado   = ConverteTextoPollMatematica(sondagem.Ordem1Resultado);
                        item.Idea   = ideia;
                        item.Order  = CadastraLegenda(Proficiency, ordem, CodigoCurso, false);
                        item.Result = resultado;
                        pollTotal.Add(item);
                        break;

                    case 2:
                        ideia       = ConverteTextoPollMatematica(sondagem.Ordem2Ideia);
                        resultado   = ConverteTextoPollMatematica(sondagem.Ordem2Resultado);
                        item.Idea   = ideia;
                        item.Order  = CadastraLegenda(Proficiency, ordem, CodigoCurso, false);
                        item.Result = resultado;
                        pollTotal.Add(item);
                        break;

                    case 3:
                        if (!CodigoCurso.Equals("2"))
                        {
                            ideia       = ConverteTextoPollMatematica(sondagem.Ordem3Ideia);
                            resultado   = ConverteTextoPollMatematica(sondagem.Ordem3Resultado);
                            item.Idea   = ideia;
                            item.Order  = CadastraLegenda(Proficiency, ordem, CodigoCurso, false);
                            item.Result = resultado;
                            pollTotal.Add(item);
                        }
                        break;

                    case 4:
                        if (!CodigoCurso.Equals("1") && !CodigoCurso.Equals("2") && !CodigoCurso.Equals("3"))
                        {
                            ideia       = ConverteTextoPollMatematica(sondagem.Ordem4Ideia);
                            resultado   = ConverteTextoPollMatematica(sondagem.Ordem4Resultado);
                            item.Idea   = ideia;
                            item.Order  = CadastraLegenda(Proficiency, ordem, CodigoCurso, false);
                            item.Result = resultado;
                            pollTotal.Add(item);
                        }
                        break;
                    }
                }
            }

            return(result);
        }
Ejemplo n.º 3
0
        private async Task <PollReportMathStudentResult> BuscaDadosCA(string CodigoTurmaEol, string Proficiency, string Term, string CodigoCurso, string schoolYear)
        {
            PollReportMathStudentResult      result    = new PollReportMathStudentResult();
            List <PollReportMathStudentItem> relatorio = new List <PollReportMathStudentItem>();

            List <MathChartDataModel> graficos = new List <MathChartDataModel>();

            PollMatematica poll = new PollMatematica(_config);

            var listaAlunosTurma = poll.BuscarAlunosTurmaRelatorioMatematicaCA(CodigoTurmaEol,
                                                                               Proficiency,
                                                                               Term);
            var alunosEol = await ObterAlunosEOL(schoolYear, CodigoTurmaEol, Term);

            var totalAlunosEol = alunosEol.Count();

            foreach (var aluno in alunosEol)
            {
                var sondagem = listaAlunosTurma.Where(s => s.AlunoEolCode == aluno.CodigoAluno.ToString()).FirstOrDefault();
                List <MathStudentItemResult> pollTotal = new List <MathStudentItemResult>();

                relatorio.Add(
                    new PollReportMathStudentItem()
                {
                    Code        = aluno.CodigoAluno.ToString(),
                    StudentName = aluno.NomeAlunoRelatorio,
                    Poll        = pollTotal
                }
                    );

                string ano = "";
                for (int ordem = 1; ordem < 5; ordem++)
                {
                    MathStudentItemResult item = new MathStudentItemResult();
                    string ideia     = "";
                    string resultado = "";

                    switch (ordem)
                    {
                    case 1:
                        ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem1Ideia) : null;

                        resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem1Resultado) : null;

                        item.Idea   = ideia;
                        item.Order  = CadastraLegenda(Proficiency, ordem, CodigoCurso, false);
                        item.Result = resultado;
                        pollTotal.Add(item);
                        break;

                    case 2:
                        ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem2Ideia) : null;

                        resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem2Resultado) : null;

                        item.Idea   = ideia;
                        item.Order  = CadastraLegenda(Proficiency, ordem, CodigoCurso, false);
                        item.Result = resultado;
                        pollTotal.Add(item);
                        break;

                    case 3:
                        if (!CodigoCurso.Equals("2"))
                        {
                            ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem3Ideia) : null;

                            resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem3Resultado) : null;

                            item.Idea   = ideia;
                            item.Order  = CadastraLegenda(Proficiency, ordem, CodigoCurso, false);
                            item.Result = resultado;
                            pollTotal.Add(item);
                        }
                        break;

                    case 4:
                        if (!CodigoCurso.Equals("1") && !CodigoCurso.Equals("2") && !CodigoCurso.Equals("3"))
                        {
                            ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem4Ideia) : null;

                            resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem4Resultado) : null;

                            item.Idea   = ideia;
                            item.Order  = CadastraLegenda(Proficiency, ordem, CodigoCurso, false);
                            item.Result = resultado;
                            pollTotal.Add(item);
                        }
                        break;
                    }
                }
            }

            for (int ordem = 1; ordem < 5; ordem++)
            {
                MathChartDataModel item = new MathChartDataModel();

                switch (ordem)
                {
                case 1:
                    item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true);
                    item.Idea = new List <int> {
                        listaAlunosTurma.Where(p => p.Ordem1Ideia != null && p.Ordem1Ideia.Equals("A")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem1Ideia != null && p.Ordem1Ideia.Equals("E")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem1Ideia != null && p.Ordem1Ideia.Equals("NR")).Count(),
                        totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem1Ideia != null &&
                                                                (p.Ordem1Ideia.Equals("A") || p.Ordem1Ideia.Equals("NR") || p.Ordem1Ideia.Equals("E"))).Count()
                    };
                    item.Result = new List <int> {
                        listaAlunosTurma.Where(p => p.Ordem1Resultado != null && p.Ordem1Resultado.Equals("A")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem1Resultado != null && p.Ordem1Resultado.Equals("E")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem1Resultado != null && p.Ordem1Resultado.Equals("NR")).Count(),
                        totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem1Resultado != null &&
                                                                (p.Ordem1Resultado.Equals("A") || p.Ordem1Resultado.Equals("NR") || p.Ordem1Resultado.Equals("E"))).Count()
                    };

                    graficos.Add(item);
                    break;

                case 2:
                    item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true);
                    item.Idea = new List <int> {
                        listaAlunosTurma.Where(p => p.Ordem2Ideia != null && p.Ordem2Ideia.Equals("A")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem2Ideia != null && p.Ordem2Ideia.Equals("E")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem2Ideia != null && p.Ordem2Ideia.Equals("NR")).Count(),
                        totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem2Ideia != null &&
                                                                (p.Ordem2Ideia.Equals("A") || p.Ordem2Ideia.Equals("NR") || p.Ordem2Ideia.Equals("E"))).Count()
                    };
                    item.Result = new List <int> {
                        listaAlunosTurma.Where(p => p.Ordem2Resultado != null && p.Ordem2Resultado.Equals("A")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem2Resultado != null && p.Ordem2Resultado.Equals("E")).Count(),
                        listaAlunosTurma.Where(p => p.Ordem2Resultado != null && p.Ordem2Resultado.Equals("NR")).Count(),
                        totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem2Resultado != null &&
                                                                (p.Ordem2Resultado.Equals("A") || p.Ordem2Resultado.Equals("NR") || p.Ordem2Resultado.Equals("E"))).Count()
                    };

                    graficos.Add(item);
                    break;

                case 3:
                    if (!CodigoCurso.Equals("2"))
                    {
                        item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true);
                        item.Idea = new List <int> {
                            listaAlunosTurma.Where(p => p.Ordem3Ideia != null && p.Ordem3Ideia.Equals("A")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem3Ideia != null && p.Ordem3Ideia.Equals("E")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem3Ideia != null && p.Ordem3Ideia.Equals("NR")).Count(),
                            totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem3Ideia != null &&
                                                                    (p.Ordem3Ideia.Equals("A") || p.Ordem3Ideia.Equals("NR") || p.Ordem3Ideia.Equals("E"))).Count()
                        };
                        item.Result = new List <int> {
                            listaAlunosTurma.Where(p => p.Ordem3Resultado != null && p.Ordem3Resultado.Equals("A")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem3Resultado != null && p.Ordem3Resultado.Equals("E")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem3Resultado != null && p.Ordem3Resultado.Equals("NR")).Count(),
                            totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem3Resultado != null &&
                                                                    (p.Ordem3Resultado.Equals("A") || p.Ordem3Resultado.Equals("NR") || p.Ordem3Resultado.Equals("E"))).Count()
                        };

                        graficos.Add(item);
                    }
                    break;

                case 4:
                    if (!CodigoCurso.Equals("1") && !CodigoCurso.Equals("2") && !CodigoCurso.Equals("3"))
                    {
                        item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true);
                        item.Idea = new List <int> {
                            listaAlunosTurma.Where(p => p.Ordem4Ideia != null && p.Ordem4Ideia.Equals("A")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem4Ideia != null && p.Ordem4Ideia.Equals("E")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem4Ideia != null && p.Ordem4Ideia.Equals("NR")).Count(),
                            totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem4Ideia != null &&
                                                                    (p.Ordem4Ideia.Equals("A") || p.Ordem4Ideia.Equals("NR") || p.Ordem4Ideia.Equals("E"))).Count()
                        };
                        item.Result = new List <int> {
                            listaAlunosTurma.Where(p => p.Ordem4Resultado != null && p.Ordem4Resultado.Equals("A")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem4Resultado != null && p.Ordem4Resultado.Equals("E")).Count(),
                            listaAlunosTurma.Where(p => p.Ordem4Resultado != null && p.Ordem4Resultado.Equals("NR")).Count(),
                            totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem4Resultado != null &&
                                                                    (p.Ordem4Resultado.Equals("A") || p.Ordem4Resultado.Equals("NR") || p.Ordem4Resultado.Equals("E"))).Count()
                        };

                        graficos.Add(item);
                    }
                    break;
                }
            }
            result.Results   = relatorio;
            result.ChartData = graficos;

            return(result);
        }