public Questao ConsultarQuestao(int questaoId)
 {
     using (var db = new AvaliacoesDbContext())
     {
         return db.Questoes.Find(questaoId);
     }
 }
 public Avaliacao ConsultarAvaliacao(int avaliacaoId)
 {
     using (var db = new AvaliacoesDbContext())
     {
         return db.Avaliacoes.Include(av => av.Questoes.Select(questao => questao.TopicoAvaliacao)).FirstOrDefault(avaliacao => avaliacao.Id == avaliacaoId);
     }
 }
 public void AdicionarQuestao(Questao questao)
 {
     using (var db = new AvaliacoesDbContext())
     {
         db.Questoes.Add(questao);
         db.SaveChanges();
     }
 }
 public void AdicionarAvaliacao(Avaliacao avaliacao)
 {
     using (var db = new AvaliacoesDbContext())
     {
         db.Avaliacoes.Add(avaliacao);
         db.SaveChanges();
     }
 }
        public async Task <AvaliacoesDbContext> CriarAsync()
        {
            var options = new DbContextOptionsBuilder <AvaliacoesDbContext>()
                          //.UseLoggerFactory(GetLoggerFactory())
                          //.EnableSensitiveDataLogging()
                          .UseSqlite(_connection)
                          .Options;
            var contexto = new AvaliacoesDbContext(options);
            await contexto.Database.EnsureCreatedAsync();

            return(contexto);
        }
        public IEnumerable<ModuloTurma> ConsultarAvaliacoesDisponiveis(string alunoId)
        {
            using (var db = new AvaliacoesDbContext())
            {
                var modulosComAvaliacaoPendente = db.ModuloTurmas.Include(mt => mt.Modulo).Include(mt => mt.Avaliacao).Include(mt => mt.Professor).Include(mt => mt.Turma).Where(
                    mt =>
                        mt.Turma.Alunos.Select(aluno => aluno.Id).Contains(alunoId) && DateTime.Now <= mt.Avaliacao.DataFim &&
                        DateTime.Now >= mt.Avaliacao.DataInicio);

                return modulosComAvaliacaoPendente.ToList();
            }
        }
Example #7
0
        public async Task InitializeAsync()
        {
            _context = await _contextFactory.CriarAsync();

            var disciplina    = new Disciplina(_disciplinaId, "Português");
            var nivelDeEnsino = new NivelEnsino(_nivelEnsinoId, "Ensino Médio");

            await _context.Disciplinas.AddAsync(disciplina);

            await _context.NiveisEnsino.AddAsync(nivelDeEnsino);

            await _context.SaveChangesAsync();

            _disciplinaId  = disciplina.Id;
            _nivelEnsinoId = nivelDeEnsino.Id;

            _disciplinasRepositorio = new DisciplinasRepositorio(_context);
            _nivelEnsinoRepositorio = new NiveisEnsinoRepositorio(_context);
            _questoesRepositorio    = new QuestoesRepositorio(_context);
            _handler = new CriarQuestaoObjetivaComandoHandler(_disciplinasRepositorio, _nivelEnsinoRepositorio, _questoesRepositorio);
        }
 public NiveisEnsinoRepositorio(AvaliacoesDbContext context)
 {
     _context = context ?? throw new ArgumentNullException(nameof(context));
 }
Example #9
0
 public DisciplinasRepositorio(AvaliacoesDbContext context)
 {
     _context = context ?? throw new ArgumentNullException(nameof(context));
 }
 public void GravarRespostas(IEnumerable<Resposta> respostas)
 {
     using (var db = new AvaliacoesDbContext())
     {
         var enumerable = respostas as IList<Resposta> ?? respostas.ToList();
         for (var index = 0; index < enumerable.Count; index++)
         {
             var resposta = enumerable[index];
             var jaResposdido = db.Respostas.FirstOrDefault(
                 resp =>
                     resp.AlunoId == resposta.AlunoId && resp.QuestaoId == resposta.QuestaoId &&
                     resposta.AvaliacaoId == resp.AvaliacaoId);
             if (jaResposdido == null)
             {
                 db.Respostas.Add(resposta);
             }
             else
             {
                 jaResposdido.OpcaoEscolhida = resposta.OpcaoEscolhida;
                 db.Entry(jaResposdido).State = EntityState.Modified;
             }
         }
         db.SaveChanges();
     }
 }