예제 #1
0
        public IActionResult Salvar(Funcionario funcionario)
        {
            FuncionarioBLL BLL = new FuncionarioBLL();
            string         mensagemErro;

            if (funcionario.Perfil == null)
            {
                TempData["mensagemErro"] = "Informe o perfil do funcionário!";
                funcionario.Senha        = "";
                return(View("Edit", funcionario));
            }

            funcionario.Senha = Uteis.GeraHashMD5(funcionario.Senha);

            if (funcionario.Codigo == null)
            {
                if (BLL.InserFuncionario(funcionario, out mensagemErro))
                {
                    TempData["mensagemSucesso"] = "Funcionário cadastrado com sucesso!";
                }
                else
                {
                    TempData["mensagemErro"] = mensagemErro;
                }
            }
            else
            {
                if (BLL.UpdateFuncionario(funcionario, out mensagemErro))
                {
                    TempData["mensagemSucesso"] = "Funcionário atualizado com sucesso!";
                }
                else
                {
                    TempData["mensagemErro"] = mensagemErro;
                }
            }

            if (funcionario.Codigo.ToString() == HttpContext.Request.Cookies["CODIGO_USUARIO"])
            {
                CookieOptions options = new CookieOptions();
                options.Expires = DateTime.Now.AddHours(6);
                HttpContext.Response.Cookies.Delete("CODIGO_PERFIL");
                HttpContext.Response.Cookies.Append("CODIGO_PERFIL", funcionario.Perfil.Codigo.ToString(), options);
            }

            return(RedirectToAction("List"));
        }
예제 #2
0
        public IActionResult EsqueceuSenha(string Usuario)
        {
            if (String.IsNullOrEmpty(Usuario))
            {
                ViewBag.Message = "Informe o nome de usuário!";
            }
            else
            {
                string mensagemErro;

                Pessoa pessoa = PessoaBLL.getPessoaByLogin(Usuario, out mensagemErro);

                if (pessoa != null)
                {
                    string newSenha = Uteis.GeraHashMD5(DateTime.Now.ToString("yyyyMMddhhmmss")).Substring(0, 6);

                    bool retornoUpdate = PessoaBLL.updateSenhaPessoa((int)pessoa.Codigo, Uteis.GeraHashMD5(newSenha));

                    if (retornoUpdate)
                    {
                        //Montar template de email
                        string templateEmail = System.IO.File.ReadAllText("./wwwRoot/Templates/TemplateEmailEsqueciSenha.html");

                        templateEmail = templateEmail.Replace("@user", pessoa.Nome)
                                        .Replace("@password", newSenha);

                        string retornoEmail = Uteis.SendMail("Cia do Treinamento", pessoa.Email, "Cia do Treinamento - Esqueceu a senha!", templateEmail);

                        ViewBag.MessageSucess = "Um email foi enviado com a nova senha para: " + pessoa.Email;
                    }
                    else
                    {
                        ViewBag.Message = "Não foi possível criar uma nova senha!";
                    }
                }
                else
                {
                    ViewBag.Message = mensagemErro;
                }
            }

            return(View("Login"));
        }
예제 #3
0
        public JsonResult ValidaPermissaoUsuario(string usuario, string senha)
        {
            string mensagemErro;

            Funcionario funcionario = FuncionarioBLL.getFuncionario(usuario, out mensagemErro);

            if (String.IsNullOrEmpty(mensagemErro))
            {
                if (funcionario.Perfil.Codigo != 1 && funcionario.Senha == Uteis.GeraHashMD5(senha))
                {
                    return(Json(new { sucesso = true, autorizado = true }));
                }
                else
                {
                    return(Json(new { sucesso = true, autorizado = false }));
                }
            }

            return(Json(new { sucesso = false, mensagemErro = mensagemErro }));
        }