Ejemplo n.º 1
0
 /**
  * @param \Generated\Shared\Transfer\WishlistChangeTransfer $wishlistChange
  *
  * @return \Generated\Shared\Transfer\WishlistTransfer
  */
 public function addItems(WishlistChangeTransfer $wishlistChange)
 {
     $wishlistIndex = $this->createIndex();
     foreach ($wishlistChange->getItems() as $wishlistItem) {
         if (isset($wishlistIndex[$wishlistItem->getGroupKey()])) {
             $key = $wishlistIndex[$wishlistItem->getGroupKey()];
             $existingItem = $this->wishlistTransfer->getItems()[$key];
             $existingItem->setQuantity($wishlistItem->getQuantity() + $existingItem->getQuantity());
         } else {
             $productConcrete = $this->productFacade->getProductConcrete($wishlistItem->getSku());
             $wishlistItem->setIdProductAbstract($productConcrete->getIdProductAbstract());
             $this->wishlistTransfer->addItem($wishlistItem);
         }
     }
     return $this->wishlistTransfer;
 }
Ejemplo n.º 2
0
 /**
  * @return \Generated\Shared\Transfer\WishlistTransfer
  */
 public function getWishlist()
 {
     $wishlist = $this->wishlistQueryContainer->queryWishlist()->findOneByFkCustomer($this->customerTransfer->getIdCustomer());
     $wishlistTransfer = new WishlistTransfer();
     foreach ($wishlist->getSpyWishlistItems() as $wishlistItemEntity) {
         $wishlistItemTransfer = new ItemTransfer();
         $productEntity = $wishlistItemEntity->getSpyProduct();
         $wishlistItemTransfer->setGroupKey($wishlistItemEntity->getGroupKey())->setAddedAt($wishlistItemEntity->getAddedAt())->setIdProductAbstract($wishlistItemEntity->getFkProductAbstract())->setSku($productEntity->getSku())->setQuantity($wishlistItemEntity->getQuantity());
         $wishlistTransfer->addItem($wishlistItemTransfer);
     }
     return $wishlistTransfer;
 }
Ejemplo n.º 3
0
 /**
  * @return void
  */
 public function testIncreaseItem()
 {
     $productFacadeMock = $this->createProductFacadeProductConcreteMock();
     $wishlistTransfer = new WishlistTransfer();
     $wishlistItem = new ItemTransfer();
     $wishlistItem->setGroupKey(123);
     $wishlistItem->setQuantity(1);
     $wishlistTransfer->addItem($wishlistItem);
     $inMemory = new InMemory($wishlistTransfer, $productFacadeMock);
     $wishlistChangeTransfer = new WishlistChangeTransfer();
     $wishlistItem = new ItemTransfer();
     $wishlistItem->setGroupKey(123);
     $wishlistItem->setQuantity(1);
     $wishlistChangeTransfer->addItem($wishlistItem);
     $wishlist = $inMemory->increaseItems($wishlistChangeTransfer);
     $wishlistItem = $wishlist->getItems()[0];
     $this->assertEquals(2, $wishlistItem->getQuantity());
 }