public async Task <int> UpdateTurma_AlunoAsync(Turma_Aluno turma_Aluno) { _context.Turmas_Aluno.Update(turma_Aluno); var resultado = await _context.SaveChangesAsync(); return(resultado); }
public async Task <IActionResult> SolicitarEntrada(DetalharTurmaViewModel detalharTurmaViewModel, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; var usuarioAtual = await _userManager.GetUserAsync(User); if (usuarioAtual.TipoUsuario == 1) { Aluno aluno = await _alunoService.GetAlunoPorIdUsuario(usuarioAtual.Id); Professor professor = await _professorService.GetProfessorPorIdUsuario(usuarioAtual.Id); Turma turma = await _turmaService.GetTurmaPorCodigo(detalharTurmaViewModel.Turma.Codigo); if (await _aluno_Turma_Service.ExisteAlunoVinculadoNaTurma(aluno.Id, detalharTurmaViewModel.Turma.Codigo)) { ViewBag.Erro = "Você já está cadastrado na turma!"; return(View(new DetalharTurmaViewModel { Turma = turma })); } if (professor == null || turma.IdProfessor != professor.Id) { Turma_Aluno turma_Aluno = new Turma_Aluno { CodigoTuma = detalharTurmaViewModel.Turma.Codigo, Status = Turma_Aluno.StatusTurma.Pendente, IdAluno = aluno.Id }; await _aluno_Turma_Service.SetTurma_AlunoAsync(turma_Aluno); ViewBag.Sucesso = "Aluno vinculado com sucesso, aguarde a validação do professor!"; ViewBag.Erro = null; } else { ViewBag.Erro = "Você não pode ser aluno e professor da mesma turma!"; ViewBag.Sucesso = null; } return(View(new DetalharTurmaViewModel { Turma = turma })); } return(RedirectToAction("Index", "Turma")); }