コード例 #1
0
        // 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"));
        }
コード例 #2
0
        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));
        }
コード例 #3
0
        // 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"));
        }