Amazon Pay - Support of Bundled Products
Edit on GitHubBundled products are optional in the shop, thus support of those should be configured.
First, you have to extend AmazonPayFactory
:
<?php
namespace Pyz\Yves\AmazonPay;
use Spryker\Yves\ProductBundle\Grouper\ProductBundleGrouper;
use SprykerEco\Yves\AmazonPay\AmazonPayFactory as EcoAmazonPayFactory;
class AmazonPayFactory extends EcoAmazonPayFactory
{
/**
* @return \Spryker\Yves\ProductBundle\Grouper\ProductBundleGrouperInterface
*/
public function createProductBundleGrouper()
{
return new ProductBundleGrouper();
}
}
Second, you have to extend AmazonPay\PaymentController
:
<?php
namespace Pyz\Yves\AmazonPay\Controller;
use Generated\Shared\Transfer\QuoteTransfer;
use SprykerEco\Yves\AmazonPay\Controller\PaymentController as EcoPaymentController;
/**
* @method \Pyz\Yves\AmazonPay\AmazonPayFactory getFactory()
*/
class PaymentController extends EcoPaymentController
{
/**
* @param \Generated\Shared\Transfer\QuoteTransfer $quoteTransfer
*
* @return \ArrayObject|\Generated\Shared\Transfer\ItemTransfer[]
*/
protected function getCartItems(QuoteTransfer $quoteTransfer)
{
return $this->getFactory()->createProductBundleGrouper()->getGroupedBundleItems(
$quoteTransfer->getItems(),
$quoteTransfer->getBundleItems()
);
}
}
Thank you!
For submitting the form