Exemplo n.º 1
0
        private Interface.Questao Ctor(ResolucaoQuestao arg)
        {
            var questao = Mapper.Map <Interface.Questao>(arg.Questao);

            questao.Resposta   = arg.Resposta;
            questao.Comentario = arg.Comentario;

            return(questao);
        }
        private List <ResolucaoQuestao> ObterResolucaoQuestao(Interface.Resolucao arg)
        {
            var resolucoes      = new Resolucoes(NhibernateSetup.GetSession());
            var listaResolucoes = resolucoes.ResolucaoQuestaoPorTarefaEAluno(arg.IdTarefa, arg.Questoes.First().IdAluno).ToList();

            if (listaResolucoes.Any())
            {
                foreach (var resolucaoQuestao in listaResolucoes)
                {
                    resolucaoQuestao.Comentario = arg.Questoes.First(q => q.Id == resolucaoQuestao.Questao.Id).Comentario;
                    resolucaoQuestao.Resposta   = arg.Questoes.First(q => q.Id == resolucaoQuestao.Questao.Id).Resposta;
                }
            }

            var tarefas  = new Tarefas(NhibernateSetup.GetSession());
            var alunos   = new Alunos(NhibernateSetup.GetSession());
            var questoes = new Questoes(NhibernateSetup.GetSession());

            var tarefa = tarefas.Por(arg.IdTarefa);
            var aluno  = alunos.Por(arg.Questoes.First().IdAluno);

            var novasQuestoes = new List <Interface.Questao>();

            foreach (var questao in arg.Questoes.Where(q => q.Resposta != null))
            {
                if (listaResolucoes.All(l => l.Questao.Id != questao.Id))
                {
                    novasQuestoes.Add(questao);
                }
            }

            foreach (var questao in novasQuestoes)
            {
                var resolucaoQuestao = new ResolucaoQuestao();
                resolucaoQuestao.Tarefa     = tarefa;
                resolucaoQuestao.Aluno      = aluno;
                resolucaoQuestao.Resposta   = questao.Resposta;
                resolucaoQuestao.Comentario = questao.Comentario;

                resolucaoQuestao.Questao = questoes.Por(questao.Id);

                listaResolucoes.Add(resolucaoQuestao);
            }

            return(listaResolucoes);
        }
Exemplo n.º 3
0
 public virtual void SalvarResolucaoQuestao(ResolucaoQuestao resolucaoQuestao)
 {
     _session.SaveOrUpdate(resolucaoQuestao);
 }