Open mauricinhojr opened 4 years ago
Olá @mauricinhojr ,
Provavelmente a variavel $order deve estar com alguma classe que não possui o método getCustomerIsGuest. Estamos fazendo uma alteração que irá deixar de usar esse método.
@deniscsz
Obrigado pelo retorno.
Tem previsão? Vai alterar aqui mesmo ou vai inserir o módulo em outro local?
--
Siga!
Facebook: ExtremeEsportes
Instagram: ExtremeEsportes
Twitter: ExtremeEsportes
Youtube: Extreme Esportes
--
Atenciosamente,
Maurício F. Júnior - Extreme Esportes
On Fri, May 29, 2020 at 7:24 PM -0300, "Tomir Schmite" notifications@github.com wrote:
Olá @mauricinhojr ,
Provavelmente a variavel $order deve estar com alguma classe que não possui o método getCustomerIsGuest. Estamos fazendo uma alteração que irá deixar de usar esse método.
@deniscsz
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
Estamos fazendo testes e homologando em https://github.com/resultate/magento2 e assim que estiver tudo ok, subiremos para o repositório oficial. Se você quiser efetuar testes a partir desse repositório, é bem-vindo.
Obrigado!
Farei agora.
--
Siga!
Facebook: ExtremeEsportes
Instagram: ExtremeEsportes
Twitter: ExtremeEsportes
Youtube: Extreme Esportes
--
Atenciosamente,
Maurício F. Júnior - Extreme Esportes
On Sun, May 31, 2020 at 12:22 AM -0300, "Tomir Schmite" notifications@github.com wrote:
Estamos fazendo testes e homologando em https://github.com/resultate/magento2 e assim que estiver tudo ok, subiremos para o repositório oficial. Se você quiser efetuar testes a partir desse repositório, é bem-vindo.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
Olá, @schmite !
Em um dos subdomínios funcionou perfeitamente. a outra deu o erro abaixo:
Uncaught Error: Call to undefined method Magento\Payment\Gateway\Data\Order\AddressAdapter::getVatId() in /home/extre146/public_html/loja/app/code/Picpay/Payment/Helper/Data.php:602
Line: 601 - 618:
if(!$taxvat){
$taxvat = $billingAddress->getVatId();
}
$buyerFirstname = $billingAddress->getFirstname();
$buyerLastname = $billingAddress->getLastname();
$buyerDocument = $this->_formatTaxVat($taxvat);
$buyerEmail = $billingAddress->getEmail();
$buyerPhone = $this->_extractPhone($billingAddress->getTelephone());
return array(
"firstName" => $buyerFirstname,
"lastName" => $buyerLastname,
"document" => $buyerDocument,
"email" => $buyerEmail,
"phone" => $buyerPhone
);
}
@mauricinhojr
Em um dos subdomínios funcionou perfeitamente. a outra deu o erro abaixo
Só para nos ajudar a entender. Você testou em duas lojas diferentes e em uma funcionou e na outra não? Ou são subdomínios diferentes para a mesma loja?
Pelo o que analisei, esse segundo erro ocorre por um bug do Magento 2.3.4 (talvez em alguma outra versão também ocorra), como podemos conferir no repositório do Magento2 no github:
Você pode contornar o erro forçando que o usuário crie uma conta (desativando o "guest checkout") pois o uso do CPF (taxvat ou vatId dependendo se há conta ou não) é obrigatório para criar uma transação no Picpay.
Funcionou. Apenas colocar CPF como obrigatório já funciona. Sugiro colocar na informação que o melhor meio é configurar para "encaminha" o pedido para o picpay. No PC ele abre o Qr Code (muito rápido e com um visual que não sobrecarrega a página). No celular ele vai direto para o App. Não concluí o pagamento. Estou aguardando "vencer" para ver se o produto volta normalmente ao estoque.
--
Siga!
Facebook: ExtremeEsportes
Instagram: ExtremeEsportes
Twitter: ExtremeEsportes
Youtube: Extreme Esportes
--
Atenciosamente,
Maurício F. Júnior - Extreme Esportes
On Sun, May 31, 2020 at 10:01 AM -0300, "Denis Colli Spalenza" notifications@github.com wrote:
@mauricinhojr
Em um dos subdomínios funcionou perfeitamente. a outra deu o erro abaixo
Só para nos ajudar a entender. Você estou em duas lojas diferentes e em uma funcionou e na outra não? Ou são subdomínios diferentes para a mesma loja?
Pelo o que analisei, este segundo erro ocorre por um bug do Magento 2.3.4 (talvez em alguma outra versão também ocorra), como podemos conferir no repositório do Magento2 no github:
magento/magento2#27485
magento/magento2@0f38f03
Você pode contornar o erro forçando que o usuário crie uma conta (desativando o "guest checkout") pois o uso do CPF (taxvat ou vatId dependendo se há conta ou não) é obrigatório para criar uma transação no Picpay.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
@mauricinhojr quando a transação for cancelada pelo lojista no painel do Picpay ou mesmo expirar após o prazo, o pedido deve ser cancelado automaticamente no Magento. O Picpay envia uma notificação para o módulo nesses casos, fazendo com que o Magento execute a troca de status. Se tiver problema em relação a isso, por favor, deixe-nos saber mas abra uma nova issue para não misturar os tópicos.
Como a questão foi resolvida você pode, por gentileza, fechar a issue?
@schmite Acho que vale a pena colocar que tem que ativar essa opção no README, como o próprio @mauricinhojr sugeriu.
Bom, eu não consegui instalar o Picpay via composer Como não há instrução para instalação manual, eu segui a estrutura de pastas do Magento 1 parcialmente para instalar e deixo aqui a instrução pra quem tiver o mesmo problema
Dentro da pasta "app", caso não exista, temos que criar a pasta "code", e dentro dessa pasta, criar a pasta "Picpay" e "Payment" Assim, a estrutura ficará: app/code/Picpay/Payment Baixe o arquivo do github, descompacte, e entre nas pastas "Picpay" e "magento2" Faça o upload todos os arquivos de dentro da pasta Picpay/magento2 para Picpay/Payment Agora abra o terminal SSH, entre na raiz (root) da sua instalação Magento 2 e rode os seguites comando CLI php bin/magento module:enable -c Picpay_Payment bin/magento setup:upgrade bin/magento setup:static-content:deploy -f bin/magento setup:di:compile bin/magento cache:clean
Pronto, agora para configurar vá ao Admin da sua loja em Stores/Configuration/Sales/Payment Methods/PIcpay
Espero ter ajudado!
Brigadão. Havia seguido esse formato também. As vendas pelo picpay está ultrapassando da pagseguro.
Obter o Outlook para Androidhttps://aka.ms/ghei36
From: LuizSantos1 notifications@github.com Sent: Saturday, June 27, 2020 3:35:35 PM To: PicPay/magento2 magento2@noreply.github.com Cc: mauricinhojr comercial@extremesportes.com.br; Mention mention@noreply.github.com Subject: Re: [PicPay/magento2] PHP Fatal error: Uncaught Error: Call to undefined method (#11)
Bom, eu não consegui instalar o Picpay via composer Como não há instrução para instalação manual, eu segui a estrutura de pastas do Magento 1 parcialmente para instalar e deixo aqui a instrução pra quem tiver o mesmo problema
Dentro da pasta "app", caso não exista, temos que criar a pasta "code", e dentro dessa pasta, criar a pasta "Picpay" e "Payment" Assim, a estrutura ficará: app/code/Picpay/Payment Baixe o arquivo do github, descompacte, e entre nas pastas "Picpay" e "magento2" Faça o upload todos os arquivos de dentro da pasta Picpay/magento2 para Picpay/Payment Agora abra o terminal SSH, entre na raiz (root) da sua instalação Magento 2 e rode os seguites comando CLI php bin/magento module:enable -c Picpay_Payment bin/magento setup:upgrade bin/magento setup:static-content:deploy -f bin/magento setup:di:compile bin/magento cache:clean
Pronto, agora para configurar vá ao Admin da sua loja em Stores/Configuration/Sales/Payment Methods/PIcpay
Espero ter ajudado!
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/PicPay/magento2/issues/11#issuecomment-650599225, or unsubscribehttps://github.com/notifications/unsubscribe-auth/APXNAA7ZWJKXD7OMNW7MV7LRYY3XPANCNFSM4NMQSC4Q.
Testei aqui e deu erro... Quando não é o problema com o Guest habilitado (o que me obriga a desinstalar um outro módulo que usa guest) é este:
"Fatal Error: 'Uncaught Error: Call to undefined method Magento\Payment\Gateway\Data\Order\AddressAdapter::getVatId() in /app\/code\/Picpay\/Payment\/Helper\/Data.php:602\nStack trace:\n#0 \/app\/code\/Picpay\/Payment\/Gateway\/Request\/AuthorizationRequest.php(74): Picpay\Payment\Helper\Data->getBuyer(Object(Magento\Payment\Gateway\Data\Order\OrderAdapter))\n#1 \/vendor\/magento\/module-payment\/Gateway\/Request\/BuilderComposite.php(50): Picpay\Payment\Gateway\Request\AuthorizationRequest->build(Array)\n#2 M3\/vendor\/magento\/module-payment\/Gateway\/Command\/GatewayCommand.php(103): Magento\Payment\Gateway\Request\BuilderComposite->build(Array)\n#3 /vendor\/magento\/module-payment\/Model\/Method\/Adapter.php(547): Magento\Payment\Gateway\Command\GatewayCommand->execute(Array)\n#4 /vendor\/magento\/module-payment\/Model\/Method\/Adapter.php(449): Magento\Payment\Model\Method\Adapter->execute' in /app\/code\/Picpay\/Payment\/Helper\/Data.php' on line 602"
Ao investigar Data.php nas linhas 601/603 tenho: if(!$taxvat){ $taxvat = $billingAddress->getVatId(); }
@LuizSantos1 Existe uma correção que eu fiz a respeito desse problema em Maio que não foi publicada nesse repositório (Não sei porque exatamente). Verifique aqui, o último commit altera justamente o Data.php: https://github.com/resultate/magento2
Outra coisa que não está clara nas instruções mas que é importante: existem 2 branchs, um para magento 2.0 até 2.2 chamado magento2_2 e o master que é compátivel com magento 2.3+
Verifique qual é a versão do seu Magento também e utilize o correto.
@deniscsz tudo bem? Eu baixei desse link: https://github.com/resultate/magento2 E o problema segue o mesmo. Eu tentei pelo composer, e não consegui Então segui a lógica do Magento 1. Baixei os arquivos, descompactei a pasta "magento2-master" Aí criei a estrutura de pasta por "app/code/Picpay/Payment" Fiz upload de todos os arquivos de dentro da pasta "magento2-master" para "app/code/Picpay/Payment" Via ssh rodei o comando: php bin/magento module:enable -c Picpay_Payment Depois bin/magento setup:upgrade bin/magento setup:static-content:deploy -f bin/magento setup:static-content:deploy pt_BR -f bin/magento setup:di:compile bin/magento cache:clean
Configurei tudo, e ainda assim o módulo dá erro.
Acessei o erro no report em: "var/report/api" E ao editar o arquivo, vejo os seguintes erros (ocultei o path completo por questão de segurança): "Fatal Error: 'Uncaught Error: Call to undefined method Magento\Payment\Gateway\Data\Order\AddressAdapter::getVatId() in app\/code\/Picpay\/Payment\/Helper\/Data.php:602\nStack trace:\n#0 app\/code\/Picpay\/Payment\/Gateway\/Request\/AuthorizationRequest.php(74): Picpay\Payment\Helper\Data->getBuyer(Object(Magento\Payment\Gateway\Data\Order\OrderAdapter))\n#1 /vendor\/magento\/module-payment\/Gateway\/Request\/BuilderComposite.php(50): Picpay\Payment\Gateway\Request\AuthorizationRequest->build(Array)\n#2 \/vendor\/magento\/module-payment\/Gateway\/Command\/GatewayCommand.php(103): Magento\Payment\Gateway\Request\BuilderComposite->build(Array)\n#3 /vendor\/magento\/module-payment\/Model\/Method\/Adapter.php(547): Magento\Payment\Gateway\Command\GatewayCommand->execute(Array)\n#4 \/home\/ultraele\/public_html\/M2\/vendor\/magento\/module-payment\/Model\/Method\/Adapter.php(449): Magento\Payment\Model\Method\Adapter->execute' in M2\/app\/code\/Picpay\/Payment\/Helper\/Data.php' on line 602"
Ao acessar o arquivo "Data.php" na linha indicada, encontro:
if(!$taxvat){ $taxvat = $billingAddress->getVatId(); }
Então acredito que seja alqum problema ao capturar a informação do billing address ou do vat ID (CPF)...
SUPOSIÇÃO Eu estou supondo que a instalação "manual" improvisada, criando as pastas em "app/code/Picpay/Payment" não funciona, porque talvez, a lógica desse módulo seja para o composer. Porque estou vendo erros com "vendor", ou será que isso não tem nada a ver?
INSTALAÇÃO MANUAL?
Teria como disponibilizar um método de instalação manual usando o comando CLI? É que nem sempre via composer funciona.
Enfim, aguardo alguma atualização à respeito.
Att Luiz Santos
@LuizSantos1 A instalação "manual" é uma prática comum também para Magento 2, não chega a ser um problema, desde que a estrutura da pasta esteja correta. Caso tenha interesse, entra em contato comigo (deniscsz@gmail.com) que tento ajuda-lo a resolver. Encontrando o problema e resolvendo, irei atualizar o repositório ao qual tenho acesso.
@deniscsz Enviei e-mail no dia 30/06 e não recebi nenhum resposta, infelizmente...
Vão corrigir esse bug no plugin ou abandonaram de vez?
Vão corrigir esse bug no plugin ou abandonaram de vez?
@LuizSantos1 Já foi corrigido nas últimas atualizações. Pode atualizar teu ambiente.
@schmite Testei no Magento 2.3.5-p1 e PHP 7.2 e está tudo funcionando. Obrigado pela correção!
Estou tendo o problema abaixo:
PHP Fatal error: Uncaught Error: Call to undefined method Magento\Payment\Gateway\Data\Order\OrderAdapter::getCustomerIsGuest() in /home/***/public_html/atividades/app/code/Picpay/Payment/Helper/Data.php:593
Line: 593 - 599 if(!$order->getCustomerIsGuest()){ $customerId = $order->getCustomerId(); $customer = $this->customerRepositoryInterface->getById($customerId); if ($customer && $customer->getId()) { $taxvat = $customer->getTaxvat(); }