123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- declare(strict_types=1);
- namespace Magento\Inventory\Model\ResourceModel;
- use Magento\Framework\App\ResourceConnection;
- /**
- * Retrieve a list of source codes by a selection of SKUs
- */
- class GetSourceCodesBySkus
- {
- /**
- * @var ResourceConnection
- */
- private $resourceConnection;
- /**
- * @param ResourceConnection $resourceConnection
- */
- public function __construct(
- ResourceConnection $resourceConnection
- ) {
- $this->resourceConnection = $resourceConnection;
- }
- /**
- * @param array $skus
- * @return string[]
- */
- public function execute(array $skus): array
- {
- $tableName = $this->resourceConnection->getTableName(SourceItem::TABLE_NAME_SOURCE_ITEM);
- $connection = $this->resourceConnection->getConnection();
- $qry = $connection
- ->select()
- ->distinct()
- ->from($tableName, 'source_code')
- ->where('sku IN (?)', $skus);
- return $connection->fetchCol($qry);
- }
- }
|