Procházet zdrojové kódy

Ticket #4626 - Payments and Market: Process refund.

AntonLV před 2 roky
rodič
revize
ed7e1243d0

+ 9 - 0
inc/classes/BxDolPayments.php

@@ -540,6 +540,15 @@ class BxDolPayments extends BxDolFactory implements iBxDolSingleton
         return bx_srv($this->_sActive, 'process_order_by_pending', $aSrvParams, 'Orders');
     }
 
+    public function refundOrder($sOrder)
+    {
+        if(!BxDolRequest::serviceExists($this->_sActive, 'refund_order', 'Orders'))
+            return false;
+
+        $aSrvParams = array($sOrder);
+        return bx_srv($this->_sActive, 'refund_order', $aSrvParams, 'Orders');
+    }
+
     public function generateLicense()
     {
         if(!BxDolRequest::serviceExists($this->_sActive, 'generate_license'))

+ 9 - 0
modules/boonex/payment/classes/BxPaymentOrders.php

@@ -174,6 +174,15 @@ class BxPaymentOrders extends BxBaseModPaymentOrders
         return $this->_oModule->registerPayment($iPendingId);
     }
 
+    public function serviceRefundOrder($sOrder)
+    {
+        $aPending = $this->_oModule->_oDb->getOrderPending(['type' => 'order', 'order' => $sOrder]);
+        if(empty($aPending) || !is_array($aPending))
+            return false;
+
+        return $this->_oModule->refundPayment($aPending);
+    }
+
     public function addOrder($aData, $bForce = false)
     {
         $iSellerId = isset($aData['seller_id']) ? (int)$aData['seller_id'] : $this->_oModule->getProfileId();