Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
source_items_on_default_source.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
10 use Magento\InventoryApi\Api\Data\SourceItemInterfaceFactory;
14 
16 $dataObjectHelper = Bootstrap::getObjectManager()->get(DataObjectHelper::class);
18 $sourceItemFactory = Bootstrap::getObjectManager()->get(SourceItemInterfaceFactory::class);
20 $sourceItemsSave = Bootstrap::getObjectManager()->get(SourceItemsSaveInterface::class);
22 $defaultSourceProvider = Bootstrap::getObjectManager()->get(DefaultSourceProviderInterface::class);
23 
30  [
31  SourceItemInterface::SOURCE_CODE => $defaultSourceProvider->getCode(),
32  SourceItemInterface::SKU => 'SKU-1',
33  SourceItemInterface::QUANTITY => 5.5,
34  SourceItemInterface::STATUS => SourceItemInterface::STATUS_IN_STOCK,
35  ],
36  [
37  SourceItemInterface::SOURCE_CODE => $defaultSourceProvider->getCode(),
38  SourceItemInterface::SKU => 'SKU-2',
39  SourceItemInterface::QUANTITY => 5,
40  SourceItemInterface::STATUS => SourceItemInterface::STATUS_IN_STOCK,
41  ],
42  [
43  SourceItemInterface::SOURCE_CODE => $defaultSourceProvider->getCode(),
44  SourceItemInterface::SKU => 'SKU-3',
45  SourceItemInterface::QUANTITY => 6,
46  SourceItemInterface::STATUS => SourceItemInterface::STATUS_OUT_OF_STOCK,
47  ],
48  [
49  SourceItemInterface::SOURCE_CODE => $defaultSourceProvider->getCode(),
50  SourceItemInterface::SKU => 'SKU-4',
51  SourceItemInterface::QUANTITY => 0,
52  SourceItemInterface::STATUS => SourceItemInterface::STATUS_OUT_OF_STOCK,
53  ],
54 ];
55 
57 foreach ($sourcesItemsData as $sourceItemData) {
59  $sourceItem = $sourceItemFactory->create();
60  $dataObjectHelper->populateWithArray($sourceItem, $sourceItemData, SourceItemInterface::class);
62 }