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); }
private static void AtualizaNovasRespostas(AlunoSondagemMatematicaDto aluno, SondagemAluno alunoSondagem, string periodoId) { foreach (var resposta in aluno.Respostas) { if (resposta.PeriodoId == periodoId) { var respostaSondagem = alunoSondagem.ListaRespostas.Where(x => x.PerguntaId == resposta.Pergunta).FirstOrDefault(); if (respostaSondagem != null && aluno.Respostas.Any(r => r.PeriodoId == periodoId)) { respostaSondagem.RespostaId = resposta.Resposta; } else { var respostaNova = CriaNovaRespostaAluno(alunoSondagem, resposta); alunoSondagem.ListaRespostas.Add(respostaNova); } } } }
private static SondagemAluno CriaNovoAlunoSondagem(Sondagem sondagem, AlunoSondagemMatematicaDto alunoDto) { var aluno = new SondagemAluno() { Id = Guid.NewGuid(), CodigoAluno = alunoDto.CodigoAluno, SondagemId = sondagem.Id, NomeAluno = alunoDto.NomeAluno, ListaRespostas = new List <SondagemAlunoRespostas>() }; var listaRespostasPeriodo = alunoDto.Respostas.Where(r => r.PeriodoId == sondagem.PeriodoId); foreach (var respostaDto in listaRespostasPeriodo) { var resposta = CriaNovaRespostaAluno(aluno, respostaDto); aluno.ListaRespostas.Add(resposta); } return(aluno); }
private static void RemoveRespostasSemValor(SMEManagementContextData contexto, AlunoSondagemMatematicaDto aluno, SondagemAluno alunoSondagem) { var ListaRespostasRemovidas = new List <SondagemAlunoRespostas>(); if (alunoSondagem.ListaRespostas.Any(x => x.RespostaId != "")) { foreach (var alunoResposta in alunoSondagem.ListaRespostas) { var respostaSondagem = aluno.Respostas.Where(x => x.Pergunta == alunoResposta.PerguntaId && x.Resposta != "").FirstOrDefault(); if (respostaSondagem == null) { ListaRespostasRemovidas.Add(alunoResposta); } } if (ListaRespostasRemovidas.Count > 0) { contexto.SondagemAlunoRespostas.RemoveRange(ListaRespostasRemovidas); } } else { contexto.SondagemAluno.Remove(alunoSondagem); } }