Magento Extensions Rating 2024
EXTENSIONS BY CATEGORY
B2B (Business-To-Business)
Blog
Customer
ERP (Enterprise Resource Planning)
Mega Menu
One Step Checkout
Order
POS (Point Of Sale)
Search
Shopping Cart
Sitemap
SEO
Social
Stock & Inventory Management
EXTENSIONS BY DEVELOPER
aheadWorks
Amasty
Boost My Shop
BSS Commerce
Magestore
MageWorx
Mirasvit
Templates Master
Wyomind
XTENTO
Magento 2 Documentation
Magento 2 Documentation
2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
vendor
magento
module-catalog-inventory
Observer
SubtractQuoteInventoryObserver.php
Go to the documentation of this file.
1
<?php
7
namespace
Magento\CatalogInventory\Observer
;
8
9
use
Magento\Framework\Event\ObserverInterface
;
10
use
Magento\CatalogInventory\Api\StockManagementInterface
;
11
use
Magento\Framework\Event\Observer
as
EventObserver
;
12
16
class
SubtractQuoteInventoryObserver
implements
ObserverInterface
17
{
21
protected
$stockManagement
;
22
26
protected
$productQty
;
27
31
protected
$itemsForReindex
;
32
39
public
function
__construct
(
40
StockManagementInterface
$stockManagement
,
41
ProductQty
$productQty
,
42
ItemsForReindex
$itemsForReindex
43
) {
44
$this->stockManagement =
$stockManagement
;
45
$this->productQty =
$productQty
;
46
$this->itemsForReindex =
$itemsForReindex
;
47
}
48
58
public
function
execute
(
EventObserver
$observer
)
59
{
61
$quote
=
$observer
->getEvent()->getQuote();
62
63
// Maybe we've already processed this quote in some event during order placement
64
// e.g. call in event 'sales_model_service_quote_submit_before' and later in 'checkout_submit_all_after'
65
if
(
$quote
->getInventoryProcessed()) {
66
return
$this;
67
}
68
$items
= $this->productQty->getProductQty(
$quote
->getAllItems());
69
73
$itemsForReindex
= $this->stockManagement->registerProductsSale(
74
$items
,
75
$quote
->getStore()->getWebsiteId()
76
);
77
if
(count(
$itemsForReindex
)) {
78
$this->itemsForReindex->setItems(
$itemsForReindex
);
79
}
80
$quote
->setInventoryProcessed(
true
);
81
return
$this;
82
}
83
}
Magento\CatalogInventory\Observer\SubtractQuoteInventoryObserver\$itemsForReindex
$itemsForReindex
Definition:
SubtractQuoteInventoryObserver.php:31
Magento\CatalogInventory\Observer\SubtractQuoteInventoryObserver\$stockManagement
$stockManagement
Definition:
SubtractQuoteInventoryObserver.php:21
Magento\Framework\Event\ObserverInterface
Definition:
ObserverInterface.php:16
$quote
$quote
Definition:
paypal_quote.php:17
Magento\CatalogInventory\Observer\SubtractQuoteInventoryObserver\__construct
__construct(StockManagementInterface $stockManagement, ProductQty $productQty, ItemsForReindex $itemsForReindex)
Definition:
SubtractQuoteInventoryObserver.php:39
Magento\CatalogInventory\Api\StockManagementInterface
Definition:
StockManagementInterface.php:17
Magento\CatalogInventory\Observer\ItemsForReindex
Definition:
ItemsForReindex.php:9
$observer
$observer
Definition:
second_website_with_second_currency.php:38
Magento\Framework\Event\Observer
Definition:
Collection.php:12
Magento\CatalogInventory\Observer
Definition:
AddStockItemsObserverTest.php:7
Magento\CatalogInventory\Observer\SubtractQuoteInventoryObserver\$productQty
$productQty
Definition:
SubtractQuoteInventoryObserver.php:26
Magento\CatalogInventory\Observer\ProductQty
Definition:
ProductQty.php:14
Magento\CatalogInventory\Observer\SubtractQuoteInventoryObserver
Definition:
SubtractQuoteInventoryObserver.php:16
Magento\Framework\Event\ObserverInterface\execute
execute(Observer $observer)
$items
$items
Definition:
order_rollback.php:21