public PollReportMathStudentResult BuscarDadosMatematicaPorTurmaAsync(string proficiency, string term, string codigoDRE, string codigoEscola, string codigoTurmaEol, string CodigoCurso) { List <MathChartDataModel> graficos = new List <MathChartDataModel>(); PollReportMathStudentResult retorno = new PollReportMathStudentResult(); //ajustar para pegar a turma List <PollReportMathStudentItem> result = new List <PollReportMathStudentItem>(); if (proficiency == "Campo Aditivo") { result = BuscaDadosCA(codigoTurmaEol, proficiency, term, codigoEscola, CodigoCurso); graficos = BuscaGraficoCA(codigoTurmaEol, proficiency, term, CodigoCurso); } else if (proficiency == "Campo Multiplicativo") { result = BuscaDadosCM(codigoTurmaEol, proficiency, term, CodigoCurso); graficos = BuscaGraficoCM(codigoTurmaEol, proficiency, term, CodigoCurso); } result = result.OrderBy(r => r.StudentName).ToList(); retorno.Results = result; retorno.ChartData = graficos; return(retorno); }
public async Task <ActionResult <string> > ObterDados([FromBody] ParametersModel parameters) { if (parameters.Discipline == "Língua Portuguesa") { if (parameters.ClassroomReport) { PollReportPortugueseStudentResult result = new PollReportPortugueseStudentResult(); result = await BuscarDadosPorTurmaAsync(parameters); return(Ok(result)); } else { PollReportPortugueseResult result = new PollReportPortugueseResult(); result = await BuscarDadosSyncAsync(parameters, "2019", parameters.CodigoDRE, parameters.CodigoEscola, parameters.CodigoCurso); return(Ok(result)); } } else if (parameters.Discipline == "Matemática") { if (parameters.ClassroomReport) { if (parameters.Proficiency == "Números") { PollReportMathStudentNumbersResult result = BuscaDadosMathTurmaNumbersAsync(parameters.Proficiency, parameters.Term, parameters.CodigoDRE, parameters.CodigoEscola, parameters.CodigoTurmaEol, parameters.CodigoCurso); return(Ok(result)); } else { PollReportMathStudentResult result = BuscaDadosMathTurmaAsync(parameters.Proficiency, parameters.Term, parameters.CodigoDRE, parameters.CodigoEscola, parameters.CodigoTurmaEol, parameters.CodigoCurso); return(Ok(result)); } } else // cONSOLIDADO { var result = await BuscaDadosMathAsync(parameters, "2019", parameters.CodigoDRE, parameters.CodigoEscola, parameters.CodigoCurso); return(Ok(result)); } } return(NotFound()); }
public async Task <PollReportMathStudentResult> BuscarDadosMatematicaPorTurmaAsync(string proficiency, string term, string codigoDRE, string codigoEscola, string codigoTurmaEol, string CodigoCurso, string schoolYear) { PollReportMathStudentResult retorno = new PollReportMathStudentResult(); if (proficiency == "Campo Aditivo") { retorno = await BuscaDadosCA(codigoTurmaEol, proficiency, term, CodigoCurso, schoolYear); } else if (proficiency == "Campo Multiplicativo") { retorno = await BuscaDadosCM(codigoTurmaEol, proficiency, term, CodigoCurso, schoolYear); } return(retorno); }
public async Task <ActionResult <string> > ObterDados([FromBody] ParametersModel parameters) { var businessPoll = new Data.Business.PollPortuguese(_config); if (int.Parse(parameters.CodigoCurso) >= 7 && parameters.Discipline == "Matemática") { var filtro = new filtrosRelatorioDTO() { AnoEscolar = int.Parse(parameters.CodigoCurso), AnoLetivo = int.Parse(parameters.SchoolYear), CodigoDre = parameters.CodigoDRE, CodigoUe = parameters.CodigoEscola, CodigoTurmaEol = parameters.CodigoTurmaEol, DescricaoDisciplina = parameters.Discipline, DescricaoPeriodo = parameters.Term, }; var obj = new RelatorioMatematicaAutoral(); if (parameters.ClassroomReport) { var relatorioPorTurma = await obj.ObterRelatorioPorTurma(filtro); return(Ok(relatorioPorTurma)); } var relatorioConsolidado = await obj.ObterRelatorioMatematicaAutoral(filtro); return(Ok(relatorioConsolidado)); } Periodo periodo = await businessPoll.ObterPeriodoRelatorioPorDescricao(parameters.Term); if (parameters.Discipline == "Língua Portuguesa") { if (parameters.ClassroomReport) { if (Convert.ToInt32(parameters.CodigoCurso) < 4) { PollReportPortugueseStudentResult result = new PollReportPortugueseStudentResult(); result = await BuscarDadosPorTurmaAsync(parameters, periodo); return(Ok(result)); } if (parameters.GrupoId != null && parameters.GrupoId.Equals("e27b99a3-789d-43fb-a962-7df8793622b1")) { var relatorioCapacidadeLeitura = new RelatorioPortuguesCapacidadeLeitura(); var relatorio = await relatorioCapacidadeLeitura.ObterRelatorioCapacidadeLeituraPorTurma(new RelatorioPortuguesFiltroDto { AnoEscolar = Convert.ToInt32(parameters.CodigoCurso), AnoLetivo = Convert.ToInt32(parameters.SchoolYear), CodigoDre = parameters.CodigoDRE, CodigoUe = parameters.CodigoEscola, ComponenteCurricularId = "c65b2c0a-7a58-4d40-b474-23f0982f14b1", GrupoId = "e27b99a3-789d-43fb-a962-7df8793622b1", PeriodoId = periodo.Id, CodigoTurma = parameters.CodigoTurmaEol }); return(Ok(relatorio)); } return(Ok(await ObterRelatorioProducaoTextoLeituraVozAlta(parameters, periodo))); } else { if (periodo == null) { return(StatusCode(500, $"Não foi possivel encontrar o périodo com descrição {parameters.Term}")); } if (Convert.ToInt32(parameters.CodigoCurso) < 4) { PollReportPortugueseResult result = new PollReportPortugueseResult(); result = await BuscarDadosSyncAsync(parameters, parameters.SchoolYear, parameters.CodigoDRE, parameters.CodigoEscola, parameters.CodigoCurso, businessPoll, periodo); return(Ok(result)); } if (parameters.GrupoId.Equals("e27b99a3-789d-43fb-a962-7df8793622b1")) { var relatorioCapacidadeLeitura = new RelatorioPortuguesCapacidadeLeitura(); var relatorioCapacidade = await relatorioCapacidadeLeitura.ObterRelatorioCapacidadeLeitura(new RelatorioPortuguesFiltroDto { AnoEscolar = Convert.ToInt32(parameters.CodigoCurso), AnoLetivo = Convert.ToInt32(parameters.SchoolYear), CodigoDre = parameters.CodigoDRE, CodigoUe = parameters.CodigoEscola, ComponenteCurricularId = "c65b2c0a-7a58-4d40-b474-23f0982f14b1", GrupoId = "e27b99a3-789d-43fb-a962-7df8793622b1", PeriodoId = periodo.Id }); return(Ok(relatorioCapacidade)); } return(Ok(await BuscarDadosAutoralAsync(parameters, periodo.Id))); } } else if (parameters.Discipline == "Matemática") { if (parameters.ClassroomReport) { if (parameters.Proficiency == "Números") { PollReportMathStudentNumbersResult result = await BuscaDadosMathTurmaNumbersAsync(parameters.Proficiency, parameters.Term, parameters.CodigoDRE, parameters.CodigoEscola, parameters.CodigoTurmaEol, parameters.CodigoCurso, parameters.SchoolYear); return(Ok(result)); } else { PollReportMathStudentResult result = await BuscaDadosMathTurmaAsync(parameters.Proficiency, parameters.Term, parameters.CodigoDRE, parameters.CodigoEscola, parameters.CodigoTurmaEol, parameters.CodigoCurso, parameters.SchoolYear); return(Ok(result)); } } else // cONSOLIDADO { var result = await BuscaDadosMathAsync(parameters, parameters.SchoolYear, parameters.CodigoDRE, parameters.CodigoEscola, parameters.CodigoCurso, periodo); return(Ok(result)); } } return(NotFound()); }
private async Task <PollReportMathStudentResult> BuscaDadosCM(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.BuscarAlunosTurmaRelatorioMatematicaCM(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>(); if (CodigoCurso.Equals("2")) { MathStudentItemResult item = new MathStudentItemResult(); string ideia = ""; string resultado = ""; ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem3Ideia) : null; resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem3Resultado) : null; item.Idea = ideia; item.Order = CadastraLegenda(Proficiency, 3, CodigoCurso, false); item.Result = resultado; pollTotal.Add(item); } else { for (int ordem = 4; ordem < 9; ordem++) { MathStudentItemResult item = new MathStudentItemResult(); MathChartDataModel itemGrafico = new MathChartDataModel(); string ideia = ""; string resultado = ""; switch (ordem) { case 4: if (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; case 5: ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem5Ideia) : null; resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem5Resultado) : null; item.Idea = ideia; item.Order = CadastraLegenda(Proficiency, ordem, CodigoCurso, false); item.Result = resultado; pollTotal.Add(item); break; case 6: if (!CodigoCurso.Equals("3")) { ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem6Ideia) : null; resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem6Resultado) : null; item.Idea = ideia; item.Order = CadastraLegenda(Proficiency, ordem, CodigoCurso, false); item.Result = resultado; pollTotal.Add(item); } break; case 7: if (!CodigoCurso.Equals("3")) { ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem7Ideia) : null; resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem7Resultado) : null; item.Idea = ideia; item.Order = CadastraLegenda(Proficiency, ordem, CodigoCurso, false); item.Result = resultado; pollTotal.Add(item); } break; case 8: if (!CodigoCurso.Equals("3") && !CodigoCurso.Equals("4")) { ideia = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem8Ideia) : null; resultado = sondagem != null?ConverteTextoPollMatematica(sondagem.Ordem8Resultado) : null; item.Idea = ideia; item.Order = CadastraLegenda(Proficiency, ordem, CodigoCurso, false); item.Result = resultado; pollTotal.Add(item); } break; } } } relatorio.Add( new PollReportMathStudentItem() { Code = aluno.CodigoAluno.ToString(), StudentName = aluno.NomeAlunoRelatorio, Poll = pollTotal } ); } if (CodigoCurso.Equals("2")) { MathChartDataModel item = new MathChartDataModel(); item.Name = CadastraLegenda(Proficiency, 3, 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); } else { for (int ordem = 4; ordem < 11; ordem++) { MathChartDataModel item = new MathChartDataModel(); switch (ordem) { case 4: if (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; case 5: item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true); item.Idea = new List <int> { listaAlunosTurma.Where(p => p.Ordem5Ideia != null && p.Ordem5Ideia.Equals("A")).Count(), listaAlunosTurma.Where(p => p.Ordem5Ideia != null && p.Ordem5Ideia.Equals("E")).Count(), listaAlunosTurma.Where(p => p.Ordem5Ideia != null && p.Ordem5Ideia.Equals("NR")).Count(), totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem5Ideia != null && (p.Ordem5Ideia.Equals("A") || p.Ordem5Ideia.Equals("NR") || p.Ordem5Ideia.Equals("E"))).Count() }; item.Result = new List <int> { listaAlunosTurma.Where(p => p.Ordem5Resultado != null && p.Ordem5Resultado.Equals("A")).Count(), listaAlunosTurma.Where(p => p.Ordem5Resultado != null && p.Ordem5Resultado.Equals("E")).Count(), listaAlunosTurma.Where(p => p.Ordem5Resultado != null && p.Ordem5Resultado.Equals("NR")).Count(), totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem5Resultado != null && (p.Ordem5Resultado.Equals("A") || p.Ordem5Resultado.Equals("NR") || p.Ordem5Resultado.Equals("E"))).Count() }; graficos.Add(item); break; case 6: if (!CodigoCurso.Equals("3")) { item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true); item.Idea = new List <int> { listaAlunosTurma.Where(p => p.Ordem6Ideia != null && p.Ordem6Ideia.Equals("A")).Count(), listaAlunosTurma.Where(p => p.Ordem6Ideia != null && p.Ordem6Ideia.Equals("E")).Count(), listaAlunosTurma.Where(p => p.Ordem6Ideia != null && p.Ordem6Ideia.Equals("NR")).Count(), totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem6Ideia != null && (p.Ordem6Ideia.Equals("A") || p.Ordem6Ideia.Equals("NR") || p.Ordem6Ideia.Equals("E"))).Count() }; item.Result = new List <int> { listaAlunosTurma.Where(p => p.Ordem6Resultado != null && p.Ordem6Resultado.Equals("A")).Count(), listaAlunosTurma.Where(p => p.Ordem6Resultado != null && p.Ordem6Resultado.Equals("E")).Count(), listaAlunosTurma.Where(p => p.Ordem6Resultado != null && p.Ordem6Resultado.Equals("NR")).Count(), totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem6Resultado != null && (p.Ordem6Resultado.Equals("A") || p.Ordem6Resultado.Equals("NR") || p.Ordem6Resultado.Equals("E"))).Count() }; graficos.Add(item); } break; case 7: if (!CodigoCurso.Equals("3")) { item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true); item.Idea = new List <int> { listaAlunosTurma.Where(p => p.Ordem7Ideia != null && p.Ordem7Ideia.Equals("A")).Count(), listaAlunosTurma.Where(p => p.Ordem7Ideia != null && p.Ordem7Ideia.Equals("E")).Count(), listaAlunosTurma.Where(p => p.Ordem7Ideia != null && p.Ordem7Ideia.Equals("NR")).Count(), totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem7Ideia != null && (p.Ordem7Ideia.Equals("A") || p.Ordem7Ideia.Equals("NR") || p.Ordem7Ideia.Equals("E"))).Count() }; item.Result = new List <int> { listaAlunosTurma.Where(p => p.Ordem7Resultado != null && p.Ordem7Resultado.Equals("A")).Count(), listaAlunosTurma.Where(p => p.Ordem7Resultado != null && p.Ordem7Resultado.Equals("E")).Count(), listaAlunosTurma.Where(p => p.Ordem7Resultado != null && p.Ordem7Resultado.Equals("NR")).Count(), totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem7Ideia != null && (p.Ordem7Ideia.Equals("A") || p.Ordem7Ideia.Equals("NR") || p.Ordem7Ideia.Equals("E"))).Count() }; graficos.Add(item); } break; case 8: if (!CodigoCurso.Equals("3") && !CodigoCurso.Equals("4")) { item.Name = CadastraLegenda(Proficiency, ordem, CodigoCurso, true); item.Idea = new List <int> { listaAlunosTurma.Where(p => p.Ordem8Ideia != null && p.Ordem8Ideia.Equals("A")).Count(), listaAlunosTurma.Where(p => p.Ordem8Ideia != null && p.Ordem8Ideia.Equals("E")).Count(), listaAlunosTurma.Where(p => p.Ordem8Ideia != null && p.Ordem8Ideia.Equals("NR")).Count(), totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem8Ideia != null && (p.Ordem8Ideia.Equals("A") || p.Ordem8Ideia.Equals("NR") || p.Ordem8Ideia.Equals("E"))).Count() }; item.Result = new List <int> { listaAlunosTurma.Where(p => p.Ordem8Resultado != null && p.Ordem8Resultado.Equals("A")).Count(), listaAlunosTurma.Where(p => p.Ordem8Resultado != null && p.Ordem8Resultado.Equals("E")).Count(), listaAlunosTurma.Where(p => p.Ordem8Resultado != null && p.Ordem8Resultado.Equals("NR")).Count(), totalAlunosEol - listaAlunosTurma.Where(p => p.Ordem8Resultado != null && (p.Ordem8Resultado.Equals("A") || p.Ordem8Resultado.Equals("NR") || p.Ordem8Resultado.Equals("E"))).Count() }; graficos.Add(item); } break; } } } result.Results = relatorio; result.ChartData = graficos; return(result); }