public IActionResult PostAnotacoes(int aulaId, int alunoId, string anotacoes) { AnotacaoAula anotacaoAula = _dbContext.AnotacoesAulas .Where(aa => aa.AlunoId == alunoId) .Where(aa => aa.AulaId == aulaId) .SingleOrDefault(); if (anotacaoAula == null) { _dbContext.AnotacoesAulas.Add(new AnotacaoAula { AlunoId = alunoId, AulaId = aulaId, Anotacao = anotacoes }); } else { anotacaoAula.Anotacao = anotacoes; _dbContext.Update(anotacaoAula); } _dbContext.SaveChanges(); return(Ok()); }
public IActionResult Index(int alunoId, int?cursoId) { SalaAulaVM salaAulaVM = new SalaAulaVM(); Matricula matricula = _dbContext.Matriculas.Where(m => m.CursoId == cursoId && m.AlunoId == alunoId).SingleOrDefault(); Curso curso = _dbContext.Cursos.Find(cursoId); IEnumerable <Modulo> modulos = _dbContext.Modulos .OrderBy(m => m.NumeroModulo) .Where(m => m.CursoId == cursoId).ToList(); salaAulaVM.Curso = curso; foreach (var modulo in salaAulaVM.Curso.Modulos) { IEnumerable <Aula> aulas = _dbContext.Aulas.OrderBy(a => a.NumeroAula).Where(a => a.ModuloId == modulo.Id).ToList(); } StatusAulas statusAulas = _dbContext.StatusAulas .Include(sa => sa.Matricula.Aluno) .Include(sa => sa.AulasAssistidas) .Where(sa => sa.MatriculaId == matricula.Id) .SingleOrDefault(); if (statusAulas == null) { int aulaAssistindoId = salaAulaVM.Curso.Modulos[0].Aulas[0].Id; int aulaPodeMarcarAssistidaId = aulaAssistindoId; int ultimoModuloLiberado = salaAulaVM.Curso.Modulos[0].Id; StatusAulas sa = new StatusAulas { MatriculaId = matricula.Id, AulaAssistindoId = aulaAssistindoId, AulaPodeMarcarAssistidaId = aulaPodeMarcarAssistidaId, UltimoModuloLiberadoId = ultimoModuloLiberado, AulasAssistidas = new List <AulaAssistida>() }; _dbContext.StatusAulas.Add(sa); _dbContext.SaveChanges(); salaAulaVM.StatusAulas = sa; } else { salaAulaVM.StatusAulas = statusAulas; } foreach (var modulo in salaAulaVM.Curso.Modulos) { Modulo m = _dbContext.Modulos.Find(salaAulaVM.StatusAulas.UltimoModuloLiberadoId); if (m.NumeroModulo >= modulo.NumeroModulo) { modulo.Liberado = true; if (salaAulaVM.StatusAulas.AvaliacaoLiberadaId == modulo.AvaliacaoId) { modulo.AvaliacaoLiberada = true; } foreach (var aula in modulo.Aulas) { AulaAssistida aulaAssistida = salaAulaVM.StatusAulas.AulasAssistidas.FirstOrDefault(aa => aa.AulaId == aula.Id); if (aulaAssistida != null) { aula.Assistida = true; } if (aula.Id == salaAulaVM.StatusAulas.AulaAssistindoId) { aula.Assistindo = true; AnotacaoAula anotacaoAula = _dbContext.AnotacoesAulas .Where(aa => aa.AulaId == aula.Id && aa.AlunoId == salaAulaVM.StatusAulas.Matricula.AlunoId) .FirstOrDefault(); if (anotacaoAula != null) { aula.Anotacoes = anotacaoAula.Anotacao; } } if (aula.Id == salaAulaVM.StatusAulas.AulaPodeMarcarAssistidaId) { aula.PodeMarcarAssistida = true; } } } } return(View(salaAulaVM)); }