Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
source_item_configuration.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
10 use Magento\InventoryLowQuantityNotificationApi\Api\Data\SourceItemConfigurationInterfaceFactory;
13 
15 $dataObjectHelper = Bootstrap::getObjectManager()->get(DataObjectHelper::class);
17 $sourceItemConfigurationFactory = Bootstrap::getObjectManager()->get(SourceItemConfigurationInterfaceFactory::class);
19 $sourceItemConfigurationsSave = Bootstrap::getObjectManager()->get(SourceItemConfigurationsSaveInterface::class);
20 
22  [
23  // for disabled source
24  SourceItemConfigurationInterface::SOURCE_CODE => 'eu-disabled',
25  SourceItemConfigurationInterface::SKU => 'SKU-1',
26  SourceItemConfigurationInterface::INVENTORY_NOTIFY_QTY => 1000,
27  ],
28  [
29  // notify_stock_qty > quantity
30  SourceItemConfigurationInterface::SOURCE_CODE => 'eu-1',
31  SourceItemConfigurationInterface::SKU => 'SKU-1',
32  SourceItemConfigurationInterface::INVENTORY_NOTIFY_QTY => 5.6,
33  ],
34  [
35  // This should not be showed in status out of stock
36  SourceItemConfigurationInterface::SOURCE_CODE => 'eu-2',
37  SourceItemConfigurationInterface::SKU => 'SKU-3',
38  SourceItemConfigurationInterface::INVENTORY_NOTIFY_QTY => 1000,
39  ],
40  [
41  // notify_stock_qty < quantity
42  SourceItemConfigurationInterface::SOURCE_CODE => 'us-1',
43  SourceItemConfigurationInterface::SKU => 'SKU-2',
44  SourceItemConfigurationInterface::INVENTORY_NOTIFY_QTY => 4.5,
45  ],
46 ];
47 
49 foreach ($sourceItemConfigurationsData as $sourceItemConfigurationData) {
51  $sourceItemConfiguration = $sourceItemConfigurationFactory->create();
52  $dataObjectHelper->populateWithArray(
53  $sourceItemConfiguration,
54  $sourceItemConfigurationData,
55  SourceItemConfigurationInterface::class
56  );
57  $sourceItemConfigurations[] = $sourceItemConfiguration;
58 }
59 
$sourceItemConfigurationFactory
$sourceItemConfigurationsData
$sourceItemConfigurationsSave