diff --git a/Api/Data/QliroOrderItemInterface.php b/Api/Data/QliroOrderItemInterface.php index 9f36c6e..49f1331 100644 --- a/Api/Data/QliroOrderItemInterface.php +++ b/Api/Data/QliroOrderItemInterface.php @@ -28,6 +28,7 @@ const TYPE_DISCOUNT = 'Discount'; const TYPE_FEE = 'Fee'; const TYPE_SHIPPING = 'Shipping'; + const TYPE_BUNDLE = 'Bundle'; /** * @return string diff --git a/Model/Product/Type/Handler/BundleHandler.php b/Model/Product/Type/Handler/BundleHandler.php new file mode 100644 index 0000000..9d8ab17 --- /dev/null +++ b/Model/Product/Type/Handler/BundleHandler.php @@ -0,0 +1,31 @@ +getType() !== QliroOrderItemInterface::TYPE_PRODUCT && + $qliroOrderItem->getType() !== QliroOrderItemInterface::TYPE_BUNDLE) { + return null; + } + + return $typeSourceProvider->getSourceItemByMerchantReference($qliroOrderItem->getMerchantReference()); + } + +} diff --git a/etc/di.xml b/etc/di.xml index bd09aa4..62bef14 100644 --- a/etc/di.xml +++ b/etc/di.xml @@ -52,6 +52,9 @@ Qliro\QliroOne\Model\Product\Type\Handler\ConfigurableHandler Qliro\QliroOne\Model\Product\Type\Handler\ConfigurableHandler + Qliro\QliroOne\Model\Product\Type\Handler\BundleHandler + Qliro\QliroOne\Model\Product\Type\Handler\BundleHandler + Qliro\QliroOne\Model\Product\Type\Handler\BundleHandler