6 declare(strict_types=1);
28 private $defaultStockProvider;
33 private $stockIndexTableNameResolver;
45 $this->schemaSetup = $schemaSetup;
46 $this->stockIndexTableNameResolver = $stockIndexTableNameResolver;
47 $this->defaultStockProvider = $defaultStockProvider;
63 $this->schemaSetup->startSetup();
64 $defaultStockId = $this->defaultStockProvider->getId();
65 $viewToLegacyIndex = $this->stockIndexTableNameResolver->execute($defaultStockId);
66 $legacyStockStatusTable = $this->schemaSetup->getTable(
'cataloginventory_stock_status');
67 $productTable = $this->schemaSetup->getTable(
'catalog_product_entity');
70 VIEW {$viewToLegacyIndex} 74 legacy_stock_status.product_id, 75 legacy_stock_status.website_id, 76 legacy_stock_status.stock_id, 77 legacy_stock_status.qty quantity, 78 legacy_stock_status.stock_status is_salable, 80 FROM {$legacyStockStatusTable} legacy_stock_status 81 INNER JOIN {$productTable} product 82 ON legacy_stock_status.product_id = product.entity_id;";
83 $this->schemaSetup->getConnection()->query($sql);
84 $this->schemaSetup->endSetup();
__construct(SchemaSetupInterface $schemaSetup, DefaultStockProviderInterface $defaultStockProvider, StockIndexTableNameResolverInterface $stockIndexTableNameResolver)