Example #1
0
 /**
  * @param int|null $gettingQuoteItemId
  * @param int|null $quoteItemId
  * @param string|null $result
  *
  * @dataProvider dataProviderGetItemByQuoteItemId
  */
 public function testGetItemByQuoteItemId($gettingQuoteItemId, $quoteItemId, $result)
 {
     $this->item->expects($this->any())->method('getQuoteItemId')->willReturn($gettingQuoteItemId);
     if ($result !== null) {
         $result = $this->item;
     }
     $this->assertEquals($result, $this->order->getItemByQuoteItemId($quoteItemId));
 }
Example #2
0
 /**
  * Process items dependency for new order, returns qty of affected items;
  *
  * @param \Magento\Sales\Model\Order $object
  * @return int
  */
 protected function calculateItems(\Magento\Sales\Model\Order $object)
 {
     $itemsCount = 0;
     if (!$object->getId()) {
         foreach ($object->getAllItems() as $item) {
             /** @var  \Magento\Sales\Model\Order\Item $item */
             $parent = $item->getQuoteParentItemId();
             if ($parent && !$item->getParentItem()) {
                 $item->setParentItem($object->getItemByQuoteItemId($parent));
             }
             $childItems = $item->getChildrenItems();
             if (empty($childItems)) {
                 $itemsCount++;
             }
         }
     }
     return $itemsCount;
 }
 /**
  * @param \Magento\Sales\Model\Order $order
  * @return mixed
  */
 protected function getOrderItemForTransaction(\Magento\Sales\Model\Order $order)
 {
     $order->getItemByQuoteItemId($order->getQuoteId());
     foreach ($order->getItemsCollection() as $item) {
         if (!$item->isDeleted() && !$item->getParentItemId()) {
             return $item;
         }
     }
     return null;
 }