1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- declare(strict_types=1);
- namespace Magento\InventorySales\Model;
- use Magento\InventoryApi\Api\Data\StockInterface;
- use Magento\InventorySalesApi\Api\Data\SalesChannelInterface;
- use Magento\InventorySalesApi\Api\Data\SalesChannelInterfaceFactory;
- use Magento\InventorySalesApi\Api\GetStockBySalesChannelInterface;
- use Magento\InventorySalesApi\Api\StockResolverInterface;
- /**
- * @inheritdoc
- */
- class StockResolver implements StockResolverInterface
- {
- /**
- * @var GetStockBySalesChannelInterface
- */
- private $getStockBySalesChannel;
- /**
- * @var SalesChannelInterfaceFactory
- */
- private $salesChannelInterfaceFactory;
- /**
- * @param GetStockBySalesChannelInterface $getStockBySalesChannel
- * @param SalesChannelInterfaceFactory $salesChannelInterfaceFactory
- */
- public function __construct(
- GetStockBySalesChannelInterface $getStockBySalesChannel,
- SalesChannelInterfaceFactory $salesChannelInterfaceFactory
- ) {
- $this->getStockBySalesChannel = $getStockBySalesChannel;
- $this->salesChannelInterfaceFactory = $salesChannelInterfaceFactory;
- }
- /**
- * @inheritdoc
- */
- public function execute(string $type, string $code): StockInterface
- {
- $salesChannel = $this->salesChannelInterfaceFactory->create([
- 'data' => [
- SalesChannelInterface::TYPE => $type,
- SalesChannelInterface::CODE => $code
- ]
- ]);
- return $this->getStockBySalesChannel->execute($salesChannel);
- }
- }
|