private void MapearAlunosListagemMatematica(List <AlunoSondagemMatematicaDto> listagem, List <Sondagem> lsondagem) { var listaAlunosDto = new List <AlunoSondagemMatematicaDto>(); var listCodigoAlunoEol = new List <string>(); lsondagem.ForEach(s => { s.AlunosSondagem.ForEach(a => { var alunoDto = new AlunoSondagemMatematicaDto(); alunoDto.Id = a.Id != null ? a.Id.ToString() : null; alunoDto.AnoLetivo = s.AnoLetivo; alunoDto.AnoTurma = s.AnoTurma; alunoDto.CodigoAluno = a.CodigoAluno; alunoDto.NomeAluno = a.NomeAluno; alunoDto.ComponenteCurricular = s.ComponenteCurricularId.ToString(); alunoDto.CodigoUe = s.CodigoUe; alunoDto.CodigoDre = s.CodigoDre; alunoDto.CodigoTurma = s.CodigoTurma; alunoDto.Respostas = new List <AlunoRespostaDto>(); a.ListaRespostas.ForEach(r => { var Resposta = new AlunoRespostaDto() { Resposta = r.RespostaId, Pergunta = r.PerguntaId, PeriodoId = s.PeriodoId }; alunoDto.Respostas.Add(Resposta); }); listaAlunosDto.Add(alunoDto); listCodigoAlunoEol.Add(a.CodigoAluno); }); }); foreach (var codigoAluno in listCodigoAlunoEol.Distinct()) { var listaResposta = new List <AlunoRespostaDto>(); var alunoDto = listaAlunosDto.Where(a => a.CodigoAluno == codigoAluno).FirstOrDefault(); var listaAlunoResposta = listaAlunosDto.Where(a => a.CodigoAluno == codigoAluno).ToList(); listaAlunoResposta.ForEach(lr => { lr.Respostas.ForEach(r => { listaResposta.Add(r); }); }); alunoDto.Respostas = listaResposta; if (alunoDto != null) { listagem.Add(alunoDto); } } }
private async Task <SondagemAutoral> CriarObtejetoSalvar(SMEManagementContextData contexto, AlunoRespostaDto resposta, SondagemAutoral alunoAutoral, AlunoSondagemMatematicaDto aluno) { var alunoBanco = await contexto.SondagemAutoral .FirstOrDefaultAsync(sondagem => sondagem.PerguntaId == resposta.Pergunta && sondagem.PeriodoId == resposta.PeriodoId && sondagem.CodigoAluno == alunoAutoral.CodigoAluno && sondagem.CodigoTurma == alunoAutoral.CodigoTurma); if (alunoBanco == null) { alunoBanco = new SondagemAutoral(alunoAutoral); } alunoBanco.PerguntaId = resposta.Pergunta; alunoBanco.RespostaId = resposta.Resposta; alunoBanco.PeriodoId = resposta.PeriodoId; return(alunoBanco); }
private static SondagemAlunoRespostas CriaNovaRespostaAluno(SondagemAluno aluno, AlunoRespostaDto respostaDto) { var resposta = new SondagemAlunoRespostas(); resposta.Id = Guid.NewGuid(); resposta.PerguntaId = respostaDto.Pergunta; resposta.RespostaId = respostaDto.Resposta; resposta.SondagemAlunoId = aluno.Id; return(resposta); }