public ActionResult CadastrarLicao(Licao licao, string data, int idTurma, int idMateria)
        {
            ViewBag.idMateria = new SelectList(MateriaDAO.listaMateria(), "idMateria", "nme_Materia");
            ViewBag.idTurma   = new SelectList(TurmaDAO.listaTurmas(true), "idTurma", "ano_Turma");
            if (ModelState.IsValid)
            {
                string CPFProf = System.Web.HttpContext.Current.User.Identity.Name.Split('|')[1];
                licao.professor = ProfessorDAO.buscarProfessor("CPF", CPFProf);

                licao.dta_Inicio_Licao    = DateTime.Now;
                licao.Dta_Conclusao_Licao = Convert.ToDateTime(data);

                licao.flg_Ativo = 0;

                licao.conceito = ConceitoDAO.conceitoId(5); //ID 5 = SEM CONCEITO

                licao.materia = MateriaDAO.materiaId(idMateria);

                licao.turma = TurmaDAO.turmaId(idTurma);

                if (LicaoDAO.addLicao(licao))
                {
                    ViewBag.Sucesso = true;
                    return(View());
                }
                else
                {
                    ModelState.AddModelError("", "Uma Lição com o mesmo nome ja foi cadastrada no sistema!");
                }
            }
            return(View(licao));
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id,Titulo,TextoLicao,HtmlLicao,TopicoId")] Licao licao)
        {
            if (id != licao.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    licao.DataHoraModificacao = DateTime.Now;
                    _context.Update(licao);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!LicaoExists(licao.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            var topicos = from t in _context.Topicos
                          where !_context.Topicos.Any(m => m.TopicoPaiId == t.Id)
                          select t;

            ViewData["Topicos"] = new SelectList(topicos.ToList(), "Id", "Titulo", licao.TopicoId);
            return(View(licao));
        }
        public int Gerar(int idCase, int idLicao, Usuario usuarioLogado)
        {
            AlunoDoCase alunoDoCase = _consultaDeAlunosService.ObterAlunoInscritoNoCase(usuarioLogado.Id, idCase);

            if (alunoDoCase == null)
            {
                throw new Exception("Usuário não está inscrito no case de negócio.");
            }

            Licao licao = _licaoRepository.GetById(idLicao);

            if (licao == null || licao.IdCase != idCase)
            {
                throw new Exception("Solicitação inválida.");
            }

            if (_consultaEntregaService.AlunoJaComecouAFazerALicao(alunoDoCase.Id, licao.Id))
            {
                throw new Exception("O registro de entrega desta lição já foi criado.");
            }

            EntregaDeLicao entrega = new EntregaDeLicao(licao);

            AdicionarResponsaveisPelaLicao(entrega, alunoDoCase);

            _entregaDeLicaoService.Manter(entrega);

            return(entrega.Id);
        }
Exemple #4
0
        public ActionResult Create(Licao licao)
        {
            if (ModelState["Questionario.Id"].Errors.Count > 0)
            {
                ModelState.Remove("Questionario.Id");
            }

            if (ModelState.IsValid)
            {
                licao.Turma     = db.Turmas.Find(UsuarioLogado.Turma.Id);
                licao.Professor = db.Usuarios.Find(UsuarioLogado.User.Id);
                licao.Forum     = Forum.Create();
                if (licao.Questionario != null)
                {
                    licao.Questionario = db.Questionarios.Find(licao.Questionario.Id);
                }
                db.Licoes.Add(licao);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.Turma         = new SelectList(db.Turmas.Where(t => t.Professor.Id == UsuarioLogado.User.Id).ToList(), "Id", "Nome");
            ViewBag.Questionarios = new SelectList(db.Questionarios.Where(m => m.Professor.Id == UsuarioLogado.User.Id).ToList(), "Id", "Titulo");
            return(View(licao));
        }
Exemple #5
0
        public ActionResult DeleteConfirmed(long id)
        {
            Licao licao = db.Licoes.Find(id);

            db.Licoes.Remove(licao);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public void PreencherEntidade(Licao licao)
 {
     licao.Titulo            = Titulo;
     licao.TextoApresentacao = TextoApresentacao;
     licao.Descricao         = Descricao;
     licao.FormaDeEntrega    = FormaDeEntrega;
     licao.DataLiberacao     = DataLiberacao;
     licao.DataEncerramento  = DataEncerramento;
 }
Exemple #7
0
        public ActionResult verNotasLicao(int id)
        {
            TempData["idLicao22"] = id;
            Licao l = LicaoDAO.buscarLicaoID(id);

            ViewBag.momeLicao = l.nme_Licao;
            ViewBag.idLicao   = l.idLicao;
            return(View(AlunoDAO.listarAlunos(l.turma.idTurma)));
        }
Exemple #8
0
        //
        // GET: /Licao/Delete/5

        public ActionResult Delete(long id = 0)
        {
            Licao licao = db.Licoes.Find(id);

            if (licao == null)
            {
                return(HttpNotFound());
            }
            return(View(licao));
        }
Exemple #9
0
 public static Boolean editarLicao(Licao l)
 {
     if (ctx.licoes.FirstOrDefault(x => x.idLicao == l.idLicao) != null)
     {
         ctx.Entry(l).State = EntityState.Modified;
         ctx.SaveChanges();
         return(true);
     }
     return(false);
 }
Exemple #10
0
 public static Boolean addLicao(Licao l)
 {
     if (buscarLicao(l) == null)
     {
         ctx.licoes.Add(l);
         ctx.SaveChanges();
         return(true);
     }
     return(false);
 }
Exemple #11
0
 public AvaliarRespostasDTO(Licao licao, IEnumerable <Trofeu> trofeus)
 {
     IdLicao           = licao.Id;
     Titulo            = licao.Titulo;
     TextoApresentacao = licao.TextoApresentacao;
     DataLiberacao     = licao.DataLiberacao;
     DataEncerramento  = licao.DataEncerramento;
     Questoes          = licao.Questoes.Select(q => new AvaliarQuestaoDTO(q)).ToList();
     Trofeus           = trofeus.Select(t => new TrofeuParaAtribuirDTO(t)).ToList();
 }
Exemple #12
0
 public static Licao buscarLicao(Licao l)
 {
     if (ctx.licoes.FirstOrDefault(x => x.nme_Licao.Equals(l.nme_Licao)) != null)
     {
         return(ctx.licoes.FirstOrDefault(x => x.nme_Licao.Equals(l.nme_Licao)));
     }
     else
     {
         return(null);
     }
 }
Exemple #13
0
        //
        // GET: /Licao/Edit/5

        public ActionResult Edit(long id = 0)
        {
            Licao licao = db.Licoes.Find(id);

            if (licao == null)
            {
                return(HttpNotFound());
            }

            ViewBag.Questionarios = new SelectList(db.Questionarios.Where(m => m.Professor.Id == UsuarioLogado.User.Id).ToList(), "Id", "Titulo");
            return(View(licao));
        }
Exemple #14
0
 public ActionResult ConcluirLicao(int id)
 {
     if (ModelState.IsValid)
     {
         Licao l = LicaoDAO.buscarLicaoID(id);
         l.flg_Ativo = 1;
         if (LicaoDAO.editarLicao(l))
         {
             return(RedirectToAction("ListaLicao", "Professor"));
         }
     }
     return(RedirectToAction("ListaLicao", "Professor"));
 }
 public LicaoDTO(Licao licao) : this()
 {
     Id                         = licao.Id;
     IdCase                     = licao.IdCase;
     NomeCase                   = licao.CaseDeNegocio.Nome;
     Titulo                     = licao.Titulo;
     TextoApresentacao          = licao.TextoApresentacao;
     Descricao                  = licao.Descricao;
     FormaDeEntrega             = licao.FormaDeEntrega;
     DataLiberacao              = licao.DataLiberacao;
     DataEncerramento           = licao.DataEncerramento;
     PermiteEntregasForaDoPrazo = licao.PermiteEntregasForaDoPrazo;
     Questoes                   = licao.Questoes.Select(q => new QuestaoDTO(q)).ToList();
 }
        //
        // GET: /ResponderQuestionario/

        public ActionResult Index(long?idLicao, long?idAula)
        {
            if (idLicao.HasValue)
            {
                Licao licao = db.Licoes.Find(idLicao.Value);
                return(View(licao.Questionario));
            }
            else if (idAula.HasValue)
            {
                Aula aula = db.Aulas.Find(idAula.Value);
                return(View(aula.Questionario));
            }
            else
            {
                throw new ApplicationException("Deve ser informada uma aula ou lição.");
            }
        }
        public async Task <IActionResult> Create([Bind("Id,Titulo,TextoLicao,HtmlLicao,TopicoId")] Licao licao)
        {
            if (ModelState.IsValid)
            {
                licao.DataHoraModificacao = DateTime.Now;
                _context.Add(licao);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }

            var topicos = from t in _context.Topicos
                          where !_context.Topicos.Any(m => m.TopicoPaiId == t.Id)
                          select t;

            ViewData["Topicos"] = new SelectList(topicos.ToList(), "Id", "Titulo");
            return(View(licao));
        }
        public AvaliarRespostasDTO ObterDadosDePreparacaoParaAvaliarRespostas(int idLicao, Usuario usuarioLogado)
        {
            Licao licao = _licaoRepository.GetById(idLicao);

            if (licao == null)
            {
                throw new Exception("Lição não encontrada.");
            }

            bool ehProfessor = _caseDeNegocioService.UsuarioEstaAssociadoAoCaseDeNegocioComoProfessor(usuarioLogado, licao.CaseDeNegocio);

            if (!ehProfessor)
            {
                throw new Exception("Apenas professores têm permissão para avaliar as lições entregues.");
            }

            var trofeus = _trofeuRepository.Listar(licao.IdCase);

            return(new AvaliarRespostasDTO(licao, trofeus));
        }
Exemple #19
0
        public ActionResult EditarLicao(Licao l, string data)
        {
            ViewBag.idMateria = new SelectList(MateriaDAO.listaMateria(), "idMateria", "nome");
            ViewBag.idTurma   = new SelectList(TurmaDAO.listaTurmas(true), "idTurma", "ano");

            Licao li = LicaoDAO.buscarLicaoID(l.idLicao);

            try {
                li.nme_Licao           = l.nme_Licao;
                li.Dta_Conclusao_Licao = Convert.ToDateTime(data);
                if (LicaoDAO.editarLicao(li))
                {
                    ViewBag.Sucesso = true;
                    return(RedirectToAction("ListaLicao", "Professor"));
                }
            }catch {
                ModelState.AddModelError("", "Não foi possivel editar sua lição!");
                return(View(li));
            }
            return(View(li));
        }
        public ActionResult EnviarLicao(int idLicao)
        {
            int idAluno = Convert.ToInt16(System.Web.HttpContext.Current.User.Identity.Name.Split('|')[3]);

            Licao           l       = LicaoDAO.buscarLicaoID(idLicao);
            List <Pergunta> ps      = l.perguntas.ToList();
            List <Resposta> rs      = new List <Resposta>();
            List <Resposta> rsFinal = new List <Resposta>();

            foreach (Pergunta p in ps)
            {
                List <Resposta> aux = p.respostas.ToList();
                foreach (Resposta r in aux)
                {
                    rs.Add(r);
                }
            }
            foreach (Resposta r in rs)
            {
                if (r.aluno.idAluno == idAluno)
                {
                    rsFinal.Add(r);
                }
            }

            try {
                foreach (Resposta r in rsFinal)
                {
                    r.isEnviado = true;
                    RespostaDAO.editarBoolEnviado(r);
                }
                TempData["Sucesso"] = true;
                return(RedirectToAction("LicaoPendente", "Aluno"));
            } catch {
                TempData["Sucesso"] = false;
                return(RedirectToAction("LicaoPendente", "Aluno"));
            }
        }
Exemple #21
0
        public ActionResult Edit(Licao licao)
        {
            if (ModelState["Questionario.Id"].Errors.Count > 0)
            {
                ModelState.Remove("Questionario.Id");
            }

            if (ModelState.IsValid)
            {
                Licao licaoDb = db.Licoes.Find(licao.Id);
                licaoDb.Titulo    = licao.Titulo;
                licaoDb.Descricao = licao.Descricao;
                if (licao.Questionario != null)
                {
                    licaoDb.Questionario = db.Questionarios.Find(licao.Questionario.Id);
                }
                db.Entry(licaoDb).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.Questionarios = new SelectList(db.Questionarios.Where(m => m.Professor.Id == UsuarioLogado.User.Id).ToList(), "Id", "Titulo");
            return(View(licao));
        }
        //
        // GET: /Materiais/

        public ActionResult Index(long?idLicao, long?idAula, byte?ordenacao)
        {
            IList <Material> materiais = new List <Material>();

            ViewBag.IdAula  = idAula;
            ViewBag.IdLicao = idLicao;

            if (idAula.HasValue)
            {
                Aula aula = db.Aulas.Find(idAula.Value);
                ViewBag.Titulo      = "Materiais da aula " + aula.Titulo;
                materiais           = Ordenar(db.Materiais.Where(m => m.Aula.Id == idAula.Value && m.Visivel), ordenacao);
                ViewBag.RouteValues = new { idAula = idAula };
            }
            else if (idLicao.HasValue)
            {
                ViewBag.RouteValues = new { idLicao = idLicao };
                Licao licao = db.Licoes.Find(idLicao.Value);
                ViewBag.Titulo = "Materiais da lição " + licao.Titulo;
                materiais      = Ordenar(db.Materiais.Where(m => m.Aula == null && m.Licao.Id == idLicao.Value && m.Visivel), ordenacao);
            }

            return(View(materiais));
        }