Exemplo n.º 1
0
        //Atuliza tabela Curso para depois atualizar a tabela Curso_Descricao
        public AssuntoCursoUsuario Atualizar(AssuntoCursoUsuario acu)
        {
            Connection.Execute(
                @"BEGIN TRANSACTION;

				UPDATE Curso SET Curso.Nome = @Nome, 
                                 Curso.IdAutor = @IdAutor,
                                 Curso.IdAssunto = @IdAssunto,
                                 Curso.DataCriacao = @DataCriacao,
                                 Curso.Nivel = @Nivel,
                                 Curso.Img = @Img
					WHERE Curso.Id = @IdCurso;

				UPDATE Curso_Descricao SET Descricao = @Descricao
					WHERE Curso_Descricao.IdCurso = @IdCursoDescricao

				COMMIT;"                ,
                param: new
            {
                Nome             = acu.Nome,
                IdAutor          = acu.UsuarioSelecionado,
                IdAssunto        = acu.AssuntoSelecionado,
                DataCriacao      = acu.DataCriacao,
                Nivel            = acu.Nivel,
                Img              = acu.Img,
                Descricao        = acu.Descricao,
                IdCurso          = acu.IdCurso,
                IdCursoDescricao = acu.IdCurso
            }

                );
            return(acu);
        }
Exemplo n.º 2
0
        public AssuntoCursoUsuario Atualizar(AssuntoCursoUsuario acu)
        {
            Connection.Execute(
                @"BEGIN TRANSACTION;

				UPDATE Curso SET Curso.Nome = @Nome, Curso.IdAutor = @IdAutor
					WHERE Curso.Id = @IdCurso;

				UPDATE Assunto SET Nome = @NomeAssunto
					FROM Assunto a INNER JOIN Curso c
					ON c.IdAssunto = a.Id
					AND a.Id = @IdAssunto;

				UPDATE Curso_Descricao SET Descricao = @Descricao
					WHERE Curso_Descricao.Id = @IdCursoDescricao

				COMMIT;"                ,
                param: new
            {
                acu.Nome,
                acu.IdAutor,
                acu.IdCurso,
                acu.NomeAssunto,
                acu.IdAssunto,
                acu.IdCursoDescricao,
                acu.Descricao
            }
                );

            return(acu);
        }
Exemplo n.º 3
0
        //Inserir curso
        public AssuntoCursoUsuario Inserir(AssuntoCursoUsuario acu)
        {
            var id = Connection.ExecuteScalar <int>(
                @"INSERT INTO Curso (Nome, IdAutor, IdAssunto, Classificacao, DataCriacao, Nivel, Img) 
				 VALUES (@Nome, @IdAutor, @IdAssunto, null, GETDATE(), @Nivel, @Img); 
			   SELECT SCOPE_IDENTITY()"            ,
                param: new
            {
                Nome = acu.Nome,
                //IdAutor = acu.UsuarioSelecionado,
                //IdAssunto = acu.AssuntoSelecionado,
                Nivel = acu.Nivel,
                Img   = acu.Img
            }
                );

            acu.IdCurso = id;

            Connection.Execute(
                @"INSERT INTO Curso_Descricao (Descricao, IdCurso) 
				 VALUES (@Descricao, @IdCurso); 
			   SELECT SCOPE_IDENTITY()"            ,
                param: new
            {
                Descricao = acu.Descricao,
                IdCurso   = id
            }
                );

            return(acu);
        }
Exemplo n.º 4
0
        public ActionResult Prova(AssuntoCursoUsuario acu)
        {
            var idCurso   = acu.IdCurso;
            var idUsuario = acu.IdUsuario;
            var nota      = acu.SelectedNota;
            int notaInt   = Int32.Parse(nota);

            using (CursoRepository repo = new CursoRepository())
            {
                repo.InserirNota(idCurso, idUsuario, notaInt);
            }

            //Se o usuario concluiu o curso então atualiza data de conclusão
            using (TreinamentoRepository repoTrei = new TreinamentoRepository())
            {
                var treinamento = repoTrei.ObterTreinamento(idUsuario, idCurso);
                if (treinamento.DataConclusao.ToString() == "01/01/0001 00:00:00")
                {
                    if (treinamento != null)
                    {
                        repoTrei.AtualizarDataConclusaoTreinamento(treinamento.Id);
                    }
                }
            }
            return(RedirectToAction("Index", "Curso"));
        }
Exemplo n.º 5
0
 public void Excluir(AssuntoCursoUsuario assunto)
 {
     Connection.Execute(
         "DELETE FROM Assunto WHERE Id = @Id",
         param: new { Id = assunto.IdAssunto }
         );
 }
Exemplo n.º 6
0
        public ActionResult Login(LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            Usuario usuario;

            using (UsuarioRepository repo = new UsuarioRepository())
            {
                usuario = repo.Login(model.Email, model.Senha);
            }

            // Login com sucesso
            if (usuario != null)
            {
                var ident = new ClaimsIdentity(
                    new[]
                {
                    // Padrão para utilzar o mecanismo antiforgery
                    new Claim(ClaimTypes.NameIdentifier, usuario.Id.ToString()),
                    new Claim("http://schemas.microsoft.com/accesscontrolservice/2010/07/claims/identityprovider",
                              "ASP.NET Identity", "http://www.w3.org/2001/XMLSchema#string"),

                    // Outras Claims

                    // Nome do Usuario
                    new Claim(ClaimTypes.Name, usuario.Nome),

                    // Perfil
                    new Claim(ClaimTypes.Role, usuario.Perfil.Nome),

                    // Email
                    new Claim(ClaimTypes.Email, usuario.Email),
                },
                    DefaultAuthenticationTypes.ApplicationCookie);

                HttpContext.GetOwinContext().Authentication.SignIn(
                    new AuthenticationProperties {
                    IsPersistent = false
                }, ident);

                AssuntoCursoUsuario acu = new AssuntoCursoUsuario();
                int user = usuario.Id;
                acu.IdUsuario         = usuario.Id;
                ViewData["IdUsuario"] = user;

                if (Url.IsLocalUrl(returnUrl))
                {
                    return(Redirect(returnUrl));
                }
                return(RedirectToAction("Index", "Painel"));
            }
            else
            {
                ModelState.AddModelError("", "Credenciais Inválidas.");
                return(View(model));
            }
        }
Exemplo n.º 7
0
 public ActionResult Deletar(AssuntoCursoUsuario acu)
 {
     using (var repo = new AdminCursoRepository())
     {
         repo.Excluir(acu);
     }
     return(RedirectToAction("Index"));
 }
Exemplo n.º 8
0
 private void Excluir(AssuntoCursoUsuario assunto)
 {
     using (AssuntoRepository repo = new AssuntoRepository())
     {
         repo.Excluir(assunto);
         var assuntoRet = repo.Obter(assunto.IdAssunto);
         Assert.IsTrue(assuntoRet == null);
     }
 }
Exemplo n.º 9
0
        public ActionResult Editar(AssuntoCursoUsuario acu)
        {
            using (var repo = new CursoRepository())
            {
                var curso = repo.Atualizar(acu);

                return(RedirectToAction("Index"));
            }
        }
Exemplo n.º 10
0
        private AssuntoCursoUsuario AtualizarAssunto(AssuntoCursoUsuario assunto)
        {
            using (AssuntoRepository repo = new AssuntoRepository())
            {
                assunto.Nome = "Nome Atualizado";
                repo.Atualizar(assunto);

                var assuntoAtualizado = repo.Obter(assunto.IdAssunto);

                Assert.AreEqual("Nome Atualizado", assuntoAtualizado.NomeAssunto);

                return(assuntoAtualizado);
            }
        }
Exemplo n.º 11
0
        public AssuntoCursoUsuario Atualizar(AssuntoCursoUsuario assunto)
        {
            Connection.Execute(
                @"UPDATE Assunto SET 
                    Nome = @Nome
                WHERE Id = @Id",
                param: new
            {
                assunto.NomeAssunto,
                assunto.IdAssunto
            }
                );

            return(assunto);
        }
Exemplo n.º 12
0
        private int InserirAssunto()
        {
            using (AssuntoRepository repo = new AssuntoRepository())
            {
                var assunto = new AssuntoCursoUsuario
                {
                    Nome = "Demo teste 1"
                };

                int id = repo.Inserir(assunto).IdCurso;

                Assert.IsTrue(id > 0);
                return(id);
            }
        }
Exemplo n.º 13
0
        public AssuntoCursoUsuario Inserir(AssuntoCursoUsuario assunto)
        {
            var id = Connection.ExecuteScalar <int>(
                @"INSERT INTO Assunto (Nome) 
                 VALUES (@Nome); 
               SELECT SCOPE_IDENTITY()",
                param: new
            {
                assunto.NomeAssunto
            }
                );

            assunto.IdAssunto = id;
            return(assunto);
        }
Exemplo n.º 14
0
        //Deleta os dados da tabela Curso_Descricao e depois da Curso
        public void Excluir(AssuntoCursoUsuario acu)
        {
            Connection.Execute(
                @"BEGIN TRANSACTION;

				DELETE FROM Curso_Descricao WHERE IdCurso = @IdCurso

				DELETE FROM Curso WHERE Id = @Id

				COMMIT;"                ,
                param: new
            {
                IdCurso = acu.IdCurso,
                Id      = acu.IdCurso
            }
                );
        }
Exemplo n.º 15
0
        public ActionResult Populares()
        {
            AssuntoCursoUsuario acu = new AssuntoCursoUsuario();

            IEnumerable <AssuntoCursoUsuario> listaPop = new List <AssuntoCursoUsuario>();

            using (CursoRepository repoDestaque = new CursoRepository())
            {
                //listaPop = repoDestaque.ListarTodosCursos();
                listaPop = repoDestaque.ListarPopulares();
                foreach (var lista in listaPop)
                {
                    lista.QtdUsuariosVotosCurso = repoDestaque.ObterQtdVotos(lista.IdCurso);
                    lista.TotalDuracaoCurso     = repoDestaque.SomarDuracaoCurso(lista.IdCurso);
                    repoDestaque.AtualizaClassificacao(lista.IdCurso);
                    acu = lista;
                }
                return(View(listaPop));
            }
        }
Exemplo n.º 16
0
        public ActionResult Detalhe(int?id)
        {
            AssuntoCursoUsuario listaDetalhe = new AssuntoCursoUsuario();

            using (CursoRepository repoDetalhe = new CursoRepository())
            {
                try
                {
                    listaDetalhe = repoDetalhe.DetalheCurso(id);
                    listaDetalhe.QtdUsuariosVotosCurso = repoDetalhe.ObterQtdVotos(id);
                    listaDetalhe.TotalDuracaoCurso     = repoDetalhe.SomarDuracaoCurso(id);
                }
                catch (Exception)
                {
                    return(RedirectToAction("Index", "Curso"));

                    throw;
                }
            }
            return(View(listaDetalhe));
        }
Exemplo n.º 17
0
        public ActionResult Detalhe(int?id)
        {
            //int id = (int)Url.RequestContext.RouteData.Values["Id"];
            AssuntoCursoUsuario listaDetalhe = new AssuntoCursoUsuario();

            using (CursoRepository repoDetalhe = new CursoRepository())
            {
                try
                {
                    listaDetalhe = repoDetalhe.DetalheCurso(id);
                }
                catch (Exception)
                {
                    return(RedirectToAction("Index", "Curso"));

                    throw;
                }
            }

            //if (listaDetalhe.IdCurso == null)
            //{
            //}
            return(View(listaDetalhe));
        }
Exemplo n.º 18
0
 public void Excluir(AssuntoCursoUsuario entidade)
 {
     throw new NotImplementedException();
 }