Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
MinQtyStockCondition.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
14 
19 {
23  private $configuration;
24 
28  private $resourceConnection;
29 
34  public function __construct(
35  StockConfigurationInterface $configuration,
36  ResourceConnection $resourceConnection
37  ) {
38  $this->configuration = $configuration;
39  $this->resourceConnection = $resourceConnection;
40  }
41 
46  public function execute(Select $select): string
47  {
48  $globalMinQty = (float)$this->configuration->getMinQty();
49 
50  $quantityExpression = (string)$this->resourceConnection->getConnection()->getCheckSql(
52  0,
54  );
55  $quantityExpression = 'SUM(' . $quantityExpression . ')';
56 
57  $condition =
58  '(legacy_stock_item.use_config_min_qty = 1 AND ' . $quantityExpression . ' > ' . $globalMinQty . ')'
59  . ' OR '
60  . '(legacy_stock_item.use_config_min_qty = 0 AND ' . $quantityExpression . ' > legacy_stock_item.min_qty)';
61 
62  return $condition;
63  }
64 }
$configuration
Definition: index.php:33
__construct(StockConfigurationInterface $configuration, ResourceConnection $resourceConnection)