/** * Loads CartLine prices. * This method does not consider Coupon. * * @param CartLineInterface $cartLine Cart line * * @return CartLineInterface Line with prices loaded */ private function loadCartLinePrices(CartLineInterface $cartLine) { $purchasable = $cartLine->getPurchasable(); $purchasablePrice = $purchasable->getPrice(); /** * If present, reducedPrice will be used as purchasable price in current CartLine. */ if ($purchasable->getReducedPrice()->getAmount() > 0) { $purchasablePrice = $purchasable->getReducedPrice(); } /** * Setting amounts for current CartLine. * * Line Currency was set by CartManager::addPurchasable when factorizing CartLine */ $cartLine->setPurchasableAmount($purchasablePrice); $cartLine->setAmount($purchasablePrice->multiply($cartLine->getQuantity())); return $cartLine; }