Beispiel #1
0
 /**
  * @param \Generated\Shared\Transfer\CartChangeTransfer $cartChangeTransfer
  *
  * @return \Generated\Shared\Transfer\QuoteTransfer
  */
 public function removeItems(CartChangeTransfer $cartChangeTransfer)
 {
     $existingItems = $cartChangeTransfer->getQuote()->getItems();
     $cartIndex = $this->createCartIndex($existingItems);
     foreach ($cartChangeTransfer->getItems() as $itemTransfer) {
         $this->isValidQuantity($itemTransfer);
         $itemIdentifier = $this->getItemIdentifier($itemTransfer);
         if (isset($cartIndex[$itemIdentifier])) {
             $this->decreaseExistingItem($existingItems, $cartIndex[$itemIdentifier], $itemTransfer);
         }
     }
     return $cartChangeTransfer->getQuote();
 }