public IActionResult Create() { try { ExercicioViewModel evm = new ExercicioViewModel(); evm.Videos = VideoController.GetVideos(dbContext); if (evm.Videos.Count() == 0) { TempData["Mensagem"] = "Não há vídeos cadastrados no momento!"; TempData["Sucesso"] = false; } else { return(View(evm)); } } catch (Exception ex) { TempData["Mensagem"] = "Erro ao cadastrar exercício!"; TempData["Exception"] = ex; TempData["Sucesso"] = false; } return(RedirectToAction("Index")); }
// GET: Dicionario/Create public ActionResult Create() { try { TermoViewModel termoVM = new TermoViewModel(); termoVM.Videos = VideoController.GetVideos(dbContext); if (termoVM.Videos.Count() == 0) { TempData["Mensagem"] = "Não há vídeos cadastrados no momento!"; TempData["Sucesso"] = false; } else { return(View(termoVM)); } } catch (Exception ex) { TempData["Mensagem"] = "Erro ao buscar vídeos!"; TempData["Exception"] = ex; TempData["Sucesso"] = false; } return(RedirectToAction("Index")); }
public async Task <IActionResult> Edit(int?id, TermoViewModel termoVM) { using (await dbContext.Database.BeginTransactionAsync()) { try { Termo termo = await dbContext.Dicionario.Where(t => t.CodTermo == id.Value && t.Ativo == true).SingleOrDefaultAsync(); if (ModelState.IsValid) { termo.Descricao = termoVM.Descricao.Trim(); Termo existTermo = await dbContext.Dicionario.Where(t => t.Descricao == termo.Descricao && t.Ativo == true && t.CodTermo != termo.CodTermo).SingleOrDefaultAsync(); if (existTermo == null) { termo.CodVideo = termoVM.CodVideo; termo.Explicacao = termoVM.Explicacao; dbContext.Dicionario.Update(termo); await dbContext.SaveChangesAsync(); if (dbContext.Database.CurrentTransaction != null) { dbContext.Database.CommitTransaction(); } TempData["Mensagem"] = "Termo alterado no dicionário com sucesso!"; TempData["Sucesso"] = true; return(RedirectToAction("Index")); } else { TempData["Mensagem"] = "Já existe termo com essa descrição!"; } } termoVM.CodTermo = termo.CodTermo; termoVM.CodVideo = termo.CodVideo; termoVM.Videos = VideoController.GetVideos(dbContext); termoVM.DescVideo = termoVM.Videos.Where(v => v.CodVideo == termoVM.CodVideo) .SingleOrDefault().Descricao; } catch (Exception ex) { TempData["Mensagem"] = "Erro ao alterar termo no dicionário!"; TempData["Exception"] = ex; TempData["Sucesso"] = false; if (dbContext.Database.CurrentTransaction != null) { dbContext.Database.RollbackTransaction(); } return(RedirectToAction("Index")); } } return(View(termoVM)); }
public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } try { Exercicio exercicio = await dbContext.Exercicios.Where(e => e.CodExercicio == id.Value && e.Ativo == true).SingleOrDefaultAsync(); if (exercicio == null) { return(NotFound()); } var alternativas = await dbContext.Alternativas.Where(a => a.CodExercicio == exercicio.CodExercicio && a.Ativo == true).ToListAsync(); if (alternativas.Count == 0) { return(NotFound()); } ExercicioViewModel evm = new ExercicioViewModel(); evm.Videos = VideoController.GetVideos(dbContext); if (evm.Videos.Count() == 0) { return(NotFound()); } evm.CodExercicio = exercicio.CodExercicio; evm.CodVideo = exercicio.CodVideo; evm.DescVideo = evm.Videos.Where(v => v.CodVideo == evm.CodVideo).SingleOrDefault().Descricao; evm.Descricao = exercicio.Descricao; evm.Resposta = exercicio.Resposta; evm.Alternativa1 = alternativas.Where(a => a.CodAlternativa == 1).SingleOrDefault().Descricao; evm.Alternativa2 = alternativas.Where(a => a.CodAlternativa == 2).SingleOrDefault().Descricao; evm.Alternativa3 = alternativas.Where(a => a.CodAlternativa == 3).SingleOrDefault().Descricao; evm.Alternativa4 = alternativas.Where(a => a.CodAlternativa == 4).SingleOrDefault().Descricao; return(View(evm)); } catch (Exception ex) { TempData["Mensagem"] = "Erro ao alterar exercício!"; TempData["Exception"] = ex; TempData["Sucesso"] = false; } return(RedirectToAction("Index")); }
// GET: Dicionario/Edit/5 public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } try { Termo termo = await dbContext.Dicionario.Where(t => t.CodTermo == id && t.Ativo == true).SingleOrDefaultAsync(); if (termo == null) { return(NotFound()); } TermoViewModel termoVM = new TermoViewModel(); termoVM.CodTermo = termo.CodTermo; termoVM.Descricao = termo.Descricao; termoVM.Explicacao = termo.Explicacao; termoVM.CodVideo = termo.CodVideo; termoVM.Videos = VideoController.GetVideos(dbContext); termoVM.DescVideo = termoVM.Videos.Where(v => v.CodVideo == termoVM.CodVideo) .FirstOrDefault().Descricao; return(View(termoVM)); } catch (Exception ex) { TempData["Mensagem"] = "Erro ao visualizar termo do dicionário!"; TempData["Exception"] = ex; TempData["Sucesso"] = false; } return(RedirectToAction("Index")); }
public async Task <IActionResult> Create(ExercicioViewModel evm) { using (await dbContext.Database.BeginTransactionAsync()) { try { if (ModelState.IsValid) { evm.Descricao = evm.Descricao.Trim(); Exercicio e = await dbContext.Exercicios.Where(ex => ex.Descricao == evm.Descricao && ex.Ativo == true).SingleOrDefaultAsync(); if (e == null) { e = new Exercicio(); e.Descricao = evm.Descricao; e.CodVideo = evm.CodVideo; e.Resposta = evm.Resposta; e.Ativo = true; dbContext.Exercicios.Add(e); await dbContext.SaveChangesAsync(); Alternativa a1 = new Alternativa(); a1.Descricao = evm.Alternativa1; a1.CodAlternativa = 1; a1.CodExercicio = e.CodExercicio; a1.Ativo = true; dbContext.Alternativas.Add(a1); Alternativa a2 = new Alternativa(); a2.Descricao = evm.Alternativa2; a2.CodAlternativa = 2; a2.CodExercicio = e.CodExercicio; a2.Ativo = true; dbContext.Alternativas.Add(a2); Alternativa a3 = new Alternativa(); a3.Descricao = evm.Alternativa3; a3.CodAlternativa = 3; a3.CodExercicio = e.CodExercicio; a3.Ativo = true; dbContext.Alternativas.Add(a3); Alternativa a4 = new Alternativa(); a4.Descricao = evm.Alternativa4; a4.CodAlternativa = 4; a4.CodExercicio = e.CodExercicio; a4.Ativo = true; dbContext.Alternativas.Add(a4); await dbContext.SaveChangesAsync(); if (dbContext.Database.CurrentTransaction != null) { dbContext.Database.CommitTransaction(); } TempData["Mensagem"] = "Exercício cadastrado com sucesso!"; TempData["Sucesso"] = true; return(RedirectToAction("Index")); } else { TempData["Mensagem"] = "Já existe exercício com essa descrição!"; } } evm.Videos = VideoController.GetVideos(dbContext); } catch (Exception ex) { TempData["Mensagem"] = "Erro ao cadastrar exercício!"; TempData["Exception"] = ex; TempData["Sucesso"] = false; if (dbContext.Database.CurrentTransaction != null) { dbContext.Database.RollbackTransaction(); } return(RedirectToAction("Index")); } } return(View(evm)); }
public async Task <IActionResult> Edit(int?id, ExercicioViewModel evm) { using (await dbContext.Database.BeginTransactionAsync()) { try { Exercicio ex = await dbContext.Exercicios.Where(e => e.CodExercicio == id.Value && e.Ativo == true).SingleOrDefaultAsync(); if (ex == null) { return(NotFound()); } if (ModelState.IsValid) { ex.Descricao = evm.Descricao.Trim(); Exercicio existExercicio = await dbContext.Exercicios.Where(e => e.Descricao == ex.Descricao && e.CodExercicio != id.Value && e.Ativo == true).SingleOrDefaultAsync(); if (existExercicio == null) { ex.CodVideo = evm.CodVideo; ex.Resposta = evm.Resposta; dbContext.Exercicios.Update(ex); Alternativa a1 = await dbContext.Alternativas.Where(a => a.CodExercicio == ex.CodExercicio && a.CodAlternativa == 1 && a.Ativo == true) .SingleOrDefaultAsync(); a1.Descricao = evm.Alternativa1; dbContext.Alternativas.Update(a1); Alternativa a2 = await dbContext.Alternativas.Where(a => a.CodExercicio == ex.CodExercicio && a.CodAlternativa == 2 && a.Ativo == true) .SingleOrDefaultAsync(); a2.Descricao = evm.Alternativa2; dbContext.Alternativas.Update(a2); Alternativa a3 = await dbContext.Alternativas.Where(a => a.CodExercicio == ex.CodExercicio && a.CodAlternativa == 3 && a.Ativo == true) .SingleOrDefaultAsync(); a3.Descricao = evm.Alternativa3; dbContext.Alternativas.Update(a3); Alternativa a4 = await dbContext.Alternativas.Where(a => a.CodExercicio == ex.CodExercicio && a.CodAlternativa == 4 && a.Ativo == true) .SingleOrDefaultAsync(); a4.Descricao = evm.Alternativa4; dbContext.Alternativas.Update(a4); await dbContext.SaveChangesAsync(); if (dbContext.Database.CurrentTransaction != null) { dbContext.Database.CommitTransaction(); } TempData["Mensagem"] = "Exercício alterado com sucesso!"; TempData["Sucesso"] = true; return(RedirectToAction("Index")); } else { TempData["Mensagem"] = "Já existe exercício com essa descrição!"; } } evm.CodExercicio = ex.CodExercicio; evm.CodVideo = ex.CodVideo; evm.Videos = VideoController.GetVideos(dbContext); evm.DescVideo = evm.Videos.Where(v => v.CodVideo == evm.CodVideo) .SingleOrDefault().Descricao; } catch (Exception ex) { TempData["Mensagem"] = "Erro ao alterar exercício!"; TempData["Exception"] = ex; TempData["Sucesso"] = false; if (dbContext.Database.CurrentTransaction != null) { dbContext.Database.RollbackTransaction(); } return(RedirectToAction("Index")); } } return(View(evm)); }