Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ManageStockCondition.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
13 
18 {
22  private $configuration;
23 
27  private $getStockItemConfiguration;
28 
33  public function __construct(
34  StockConfigurationInterface $configuration,
35  GetStockItemConfigurationInterface $getStockItemConfiguration
36  ) {
37  $this->getStockItemConfiguration = $getStockItemConfiguration;
38  $this->configuration = $configuration;
39  }
40 
44  public function execute(string $sku, int $stockId): bool
45  {
46  $stockItemConfiguration = $this->getStockItemConfiguration->execute($sku, $stockId);
47 
48  $globalManageStock = $this->configuration->getManageStock();
49  $manageStock = false;
50  if ((
51  $stockItemConfiguration->isUseConfigManageStock() == 1 &&
52  $globalManageStock == 1
53  ) || (
54  $stockItemConfiguration->isUseConfigManageStock() == 0 &&
55  $stockItemConfiguration->isManageStock() == 1
56  )
57  ) {
58  $manageStock = true;
59  }
60 
61  return !$manageStock;
62  }
63 }
$configuration
Definition: index.php:33
__construct(StockConfigurationInterface $configuration, GetStockItemConfigurationInterface $getStockItemConfiguration)