@@ -51,10 +51,11 @@ private function getTable(string $tableName): string
51
51
/**
52
52
* Get query for provider
53
53
*
54
- * @param array $productIds
54
+ * @param array $skus
55
+ * @param bool $defaultStock
55
56
* @return Select
56
57
*/
57
- public function getQuery (array $ productIds ): Select
58
+ public function getQuery (array $ skus ): Select
58
59
{
59
60
$ connection = $ this ->resourceConnection ->getConnection ();
60
61
foreach ($ this ->getStocks () as $ stockId ) {
@@ -64,19 +65,12 @@ public function getQuery(array $productIds): Select
64
65
}
65
66
$ select = $ connection ->select ()
66
67
->from (['isi ' => $ this ->getTable (sprintf ('inventory_stock_%s ' , $ stockId ))], [])
67
- ->joinInner (
68
- [
69
- 'product ' => $ this ->resourceConnection ->getTableName ('catalog_product_entity ' ),
70
- ],
71
- 'product.sku = isi.sku ' ,
72
- []
73
- )->where ('product.entity_id IN (?) ' , $ productIds )
68
+ ->where ('isi.sku IN (?) ' , $ skus )
74
69
->columns (
75
70
[
76
- 'sku ' => "isi.sku " ,
77
- 'productId ' => "product.entity_id " ,
78
71
'qty ' => "isi.quantity " ,
79
72
'isSalable ' => "isi.is_salable " ,
73
+ 'sku ' => "isi.sku " ,
80
74
'stockId ' => new Expression ($ stockId ),
81
75
'manageStock ' => new Expression (1 ),
82
76
'useConfigManageStock ' => new Expression (1 ),
@@ -93,17 +87,17 @@ public function getQuery(array $productIds): Select
93
87
/**
94
88
* Get data for default stock: "inventory_stock_1" is a view used as a fallback
95
89
*
96
- * @param array $productIds
90
+ * @param array $skus
97
91
* @return Select
98
92
* @see \Magento\InventoryCatalog\Setup\Patch\Schema\CreateLegacyStockStatusView
99
93
*/
100
- public function getQueryForDefaultStock (array $ productIds ): Select
94
+ public function getQueryForDefaultStock (array $ skus ): Select
101
95
{
102
96
$ connection = $ this ->resourceConnection ->getConnection ();
103
97
$ stockId = $ this ->defaultStockProvider ->getId ();
104
98
$ select = $ connection ->select ()
105
99
->from (['isi ' => $ this ->getTable (sprintf ('inventory_stock_%s ' , $ stockId ))], [])
106
- ->where ('stock_item.product_id IN (?) ' , $ productIds )
100
+ ->where ('isi.sku IN (?) ' , $ skus )
107
101
->joinInner (
108
102
[
109
103
'stock_item ' => $ this ->resourceConnection ->getTableName ('cataloginventory_stock_item ' ),
@@ -112,10 +106,9 @@ public function getQueryForDefaultStock(array $productIds): Select
112
106
[]
113
107
)->columns (
114
108
[
115
- 'sku ' => "isi.sku " ,
116
- 'productId ' => "stock_item.product_id " ,
117
109
'qty ' => "isi.quantity " ,
118
110
'isSalable ' => "isi.is_salable " ,
111
+ 'sku ' => "isi.sku " ,
119
112
'stockId ' => new Expression ($ stockId ),
120
113
'manageStock ' => 'stock_item.manage_stock ' ,
121
114
'useConfigManageStock ' => 'stock_item.use_config_manage_stock ' ,
0 commit comments