Usuario IUsuarioService.TrocarSenha(string id, string novaSenha)
        {
            var usuario = repository.RecuperarPorId(id);

            usuario.Senha           = MetodosEstaticos.CriptografarSenha(usuario.Login, novaSenha);
            usuario.SenhaTemporaria = false;

            base.Atualizar(usuario);

            return(usuario);
        }
        public override ResultadoValidacao Inserir(Usuario model)
        {
            if (VerificaDuplicado(model.Nome, model.Login))
            {
                throw new InvalidOperationException(Textos.Geral_Mensagem_Erro_NomeDuplicado);
            }

            var resultado = base.Inserir(model);

            if (resultado.IsValid)
            {
                model.Senha           = MetodosEstaticos.CriptografarSenha(model.Login, MetodosEstaticos.GerarSenha());
                model.Senha           = MetodosEstaticos.CriptografarSenha(model.Login, "123456");
                model.SenhaTemporaria = true;

                if (!string.IsNullOrEmpty(model.Email?.Endereco))
                {
                    resultado.AdicionarMensagens(emailService.Processar(model.Email, null, model.Id));
                }
            }
            return(resultado);
        }