コード例 #1
0
ファイル: AbstractOperator.php プロジェクト: spryker/Wishlist
 /**
  * @return \Generated\Shared\Transfer\WishlistTransfer
  */
 public function executeOperation()
 {
     $this->preSave($this->wishlistChange->getItems());
     $wishlist = $this->applyOperation($this->wishlistChange);
     $this->postSave($this->wishlistChange->getItems());
     return $wishlist;
 }
コード例 #2
0
ファイル: InMemory.php プロジェクト: spryker/Wishlist
 /**
  * @param \Generated\Shared\Transfer\WishlistChangeTransfer $wishlistChange
  *
  * @return \Generated\Shared\Transfer\WishlistTransfer
  */
 public function removeItems(WishlistChangeTransfer $wishlistChange)
 {
     $wishlistIndex = $this->createIndex();
     foreach ($wishlistChange->getItems() as $key => $wishlistItem) {
         if (isset($wishlistIndex[$wishlistItem->getGroupKey()])) {
             $this->decreaseItem($wishlistIndex[$wishlistItem->getGroupKey()], $wishlistItem);
         } else {
             $this->decreaseByProductIdentifier($wishlistIndex, $wishlistItem);
         }
     }
     return $this->wishlistTransfer;
 }
コード例 #3
0
ファイル: Propel.php プロジェクト: spryker/Wishlist
 /**
  * @param \Generated\Shared\Transfer\WishlistChangeTransfer $wishlistChange
  *
  * @return \Generated\Shared\Transfer\WishlistTransfer
  */
 public function removeItems(WishlistChangeTransfer $wishlistChange)
 {
     $idCustomer = $this->customerTransfer->getIdCustomer();
     $wishlistEntity = $this->getWishlistEntity($idCustomer);
     $wishlistItems = $wishlistChange->getItems();
     foreach ($wishlistItems as $wishlistItemTransfer) {
         $wishlistItemEntity = $this->getWishlistItemEntity($wishlistItemTransfer, $wishlistEntity->getIdWishlist());
         if (empty($wishlistItemEntity)) {
             continue;
         }
         $quantityDifference = $wishlistItemEntity->getQuantity() - $wishlistItemTransfer->getQuantity();
         if ($quantityDifference <= 0) {
             $this->deleteWishlistItem($wishlistItemEntity);
         } else {
             $wishlistItemEntity->setQuantity($quantityDifference);
             $wishlistItemEntity->save();
         }
     }
     $wishlistTransfer = $this->customer->getWishlist();
     return $wishlistTransfer;
 }