6 declare(strict_types=1);
11 use Magento\CatalogInventory\Model\ResourceModel\Stock\ItemFactory;
13 use Psr\Log\LoggerInterface;
22 private $stockResourceItemFactory;
36 ItemFactory $stockResourceItemFactory,
37 LoggerInterface $logger
39 $this->stockResourceItemFactory = $stockResourceItemFactory;
49 $stockItemResource = $this->stockResourceItemFactory->create();
52 $stockImportData = array_map(
53 function ($stockItemData) {
54 unset($stockItemData[
'sku']);
55 return $stockItemData;
59 $stockItemResource->getConnection()->insertOnDuplicate(
$entityTable, $stockImportData);
60 }
catch (\Exception $e) {
61 $this->logger->error($e->getMessage());
62 throw new CouldNotSaveException(
__(
'Invalid Stock data for insert'), $e);
__construct(ItemFactory $stockResourceItemFactory, LoggerInterface $logger)