6 declare(strict_types=1);
24 private $getStockItemConfiguration;
29 private $stockConfiguration;
39 $this->getStockItemConfiguration = $getStockItemConfiguration;
40 $this->stockConfiguration = $stockConfiguration;
53 if (!$this->stockConfiguration->canSubtractQty()) {
57 $reservationToAppend = [];
58 foreach ($reservations as $reservation) {
59 $stockItemConfiguration = $this->getStockItemConfiguration->execute(
60 $reservation->getSku(),
61 $reservation->getStockId()
64 if ($stockItemConfiguration->isManageStock()) {
65 $reservationToAppend[] = $reservation;
69 if (!empty($reservationToAppend)) {
70 $proceed($reservationToAppend);
__construct(GetStockItemConfigurationInterface $getStockItemConfiguration, StockConfigurationInterface $stockConfiguration)
aroundExecute(AppendReservationsInterface $subject, \Closure $proceed, array $reservations)