@@ -104,6 +104,11 @@ class Reorder
104104 */
105105 private $ orderInfoBuyRequestGetter ;
106106
107+ /**
108+ * @var bool
109+ */
110+ private bool $ forceAdd ;
111+
107112 /**
108113 * @param OrderFactory $orderFactory
109114 * @param CustomerCartResolver $customerCartProvider
@@ -113,6 +118,7 @@ class Reorder
113118 * @param LoggerInterface $logger
114119 * @param ProductCollectionFactory $productCollectionFactory
115120 * @param OrderInfoBuyRequestGetter $orderInfoBuyRequestGetter
121+ * @param bool $forceAdd
116122 */
117123 public function __construct (
118124 OrderFactory $ orderFactory ,
@@ -122,7 +128,8 @@ public function __construct(
122128 ReorderHelper $ reorderHelper ,
123129 LoggerInterface $ logger ,
124130 ProductCollectionFactory $ productCollectionFactory ,
125- OrderInfoBuyRequestGetter $ orderInfoBuyRequestGetter
131+ OrderInfoBuyRequestGetter $ orderInfoBuyRequestGetter ,
132+ bool $ forceAdd = false
126133 ) {
127134 $ this ->orderFactory = $ orderFactory ;
128135 $ this ->cartRepository = $ cartRepository ;
@@ -132,6 +139,7 @@ public function __construct(
132139 $ this ->guestCartResolver = $ guestCartResolver ;
133140 $ this ->productCollectionFactory = $ productCollectionFactory ;
134141 $ this ->orderInfoBuyRequestGetter = $ orderInfoBuyRequestGetter ;
142+ $ this ->forceAdd = $ forceAdd ;
135143 }
136144
137145 /**
@@ -264,7 +272,7 @@ private function addItemToCart(OrderItemInterface $orderItem, Quote $cart, Produ
264272
265273 $ addProductResult = null ;
266274 try {
267- $ infoBuyRequest ->setForceAddToCart (true );
275+ $ infoBuyRequest ->setForceAddToCart ($ this -> forceAdd );
268276 $ addProductResult = $ cart ->addProduct ($ product , $ infoBuyRequest );
269277 } catch (\Magento \Framework \Exception \LocalizedException $ e ) {
270278 $ this ->addError ($ this ->getCartItemErrorMessage ($ orderItem , $ product , $ e ->getMessage ()));
0 commit comments