コード例 #1
0
ファイル: Checkout.php プロジェクト: pagseguro/magento2
 /**
  * Show payment page
  * @return \Magento\Framework\View\Result\PageFactory
  */
 public function execute()
 {
     $result = $this->payment->createPaymentRequest();
     $resultPage = $this->resultPageFactory->create();
     $code = $result->getCode();
     $resultPage->getLayout()->getBlock('pagseguro.payment.checkout')->setCode($code);
     $resultPage->getLayout()->getBlock('pagseguro.payment.checkout')->setPaymentJs($this->getPagSeguroPaymentJs());
     $resultPage->getLayout()->getBlock('pagseguro.payment.checkout')->setPaymentUrl($this->payment->checkoutUrl($code, 'paymentService'));
     return $resultPage;
 }
コード例 #2
0
ファイル: Request.php プロジェクト: pagseguro/magento2
 /**
  * Redirect to payment
  *
  * @return \Magento\Framework\Controller\Result\Redirect
  */
 public function execute()
 {
     try {
         return $this->_resultRedirectFactory->create()->setPath($this->_payment->createPaymentRequest());
     } catch (\Exception $exception) {
         /** @var \Magento\Sales\Model\Order $order */
         $order = $this->_objectManager->create('\\Magento\\Sales\\Model\\Order')->load($this->_checkoutSession->getLastRealOrder()->getId());
         /** change payment status in magento */
         $order->addStatusToHistory('pagseguro_cancelada', null, true);
         /** save order */
         $order->save();
         return $this->_redirect('pagseguro/payment/failure');
     }
 }