Ejemplo n.º 1
0
 /**
  * Collect orders data and call service method to register order PV.
  *
  * @param \Magento\Sales\Api\Data\OrderInterface $order
  */
 public function savePv(\Magento\Sales\Api\Data\OrderInterface $order)
 {
     $orderId = $order->getId();
     $state = $order->getState();
     $dateCreated = $order->getCreatedAt();
     $itemsData = $this->_subCollector->getServiceItemsForMageSaleOrder($order);
     /* compose request data and request itself */
     /** @var \Praxigento\Pv\Service\Sale\Request\Save $req */
     $req = $this->_manObj->create(\Praxigento\Pv\Service\Sale\Request\Save::class);
     $req->setSaleOrderId($orderId);
     $req->setOrderItems($itemsData);
     if ($state == \Magento\Sales\Model\Order::STATE_PROCESSING) {
         $req->setSaleOrderDatePaid($dateCreated);
     }
     $this->_callSale->save($req);
 }
 /**
  * Register PV transaction for sale order.
  */
 private function _createPvTransaction($custId, $orderId, $dateApplied)
 {
     $req = new PvSaleAccountPvRequest();
     $req->setCustomerId($custId);
     $req->setSaleOrderId($orderId);
     $req->setDateApplied($dateApplied);
     $resp = $this->_callPvSale->accountPv($req);
     if ($resp->isSucceed()) {
         $this->_logger->debug("New PV transaction is registered for order #{$orderId} and customer #{$custId} .");
     }
 }
 public function setUp()
 {
     parent::setUp();
     /* clear cached data */
     $this->_callPvSale->cacheReset();
 }