Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
GetAssignedSalesChannelsForStock.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
12 use Magento\InventorySalesApi\Api\Data\SalesChannelInterfaceFactory;
14 
19 {
23  private $getAssignedSalesChannelsDataForStock;
24 
28  private $salesChannelFactory;
29 
34  public function __construct(
35  GetAssignedSalesChannelsDataForStock $getAssignedSalesChannelsDataForStock,
36  SalesChannelInterfaceFactory $salesChannelFactory
37  ) {
38  $this->getAssignedSalesChannelsDataForStock = $getAssignedSalesChannelsDataForStock;
39  $this->salesChannelFactory = $salesChannelFactory;
40  }
41 
45  public function execute(int $stockId) : array
46  {
47  $salesChannelsData = $this->getAssignedSalesChannelsDataForStock->execute($stockId);
48 
49  $salesChannels = [];
50  foreach ($salesChannelsData as $salesChannelData) {
52  $salesChannel = $this->salesChannelFactory->create();
53  $salesChannel->setType($salesChannelData[SalesChannelInterface::TYPE]);
54  $salesChannel->setCode($salesChannelData[SalesChannelInterface::CODE]);
55  $salesChannels[] = $salesChannel;
56  }
57  return $salesChannels;
58  }
59 }
__construct(GetAssignedSalesChannelsDataForStock $getAssignedSalesChannelsDataForStock, SalesChannelInterfaceFactory $salesChannelFactory)