Example #1
0
        public IComandResult EmailEsqueceuSenha([FromBody] EmailEsqueceuSenhaComand command)
        {
            var result = (ComandResult)_usuarioHandler.Handle(command);

            this.Commit(result.Success);


            return(result);
        }
Example #2
0
        public IComandResult Handle(EmailEsqueceuSenhaComand comand)
        {
            //verificar se tem notificação no comand
            if (!comand.IsValid())
            {
                return(new ComandResult(false, "Por favor corrija os campos abaixo", comand.Notifications));
            }

            //verifica se o usuário ja existe
            var usuario = _repository.BuscarPorEmail(comand.Email);

            if (usuario == null)
            {
                AddNotification("Usuario", "Email não cadastrado!");
            }
            else
            {
                usuario.GerarRecuperSenha();
                _repository.Alterar(usuario);
            }


            if (Invalid)
            {
                return(new ComandResult(false, "Por favor corrija os campos abaixo", Notifications));
            }

            var resultato = new ComandResult(true, "Um e-mail foi enviado para o e-email " + usuario.Login, new { usuario.Id, usuario.Login });

            if (resultato.Success)
            {
                var enviou = _enviarEmailServices.EnviarCodigo("*****@*****.**", new List <string>()
                {
                    usuario.Login
                }, "*****@*****.**", null, true, "teste", "<html><body><a href='http://localhost:4200/recuperar-senha/" + usuario.RecuperarSenha + "'><button>Texto do botão</button></a></body></html>", "smtp.gmail.com");
                if (enviou)
                {
                    return(resultato);
                }
            }
            else
            {
                AddNotification("Erro", "Email não enviado!");
            }

            return(new ComandResult(false, "Falha em enviar o e-email,tente novamente!", Notifications));
        }