11 use Magento\AsynchronousOperations\Model\ResourceModel\Bulk\CollectionFactory as BulkCollectionFactory;
22 private $metadataPool;
27 private $resourceConnection;
37 private $bulkCollectionFactory;
50 BulkCollectionFactory $bulkCollectionFactory,
53 $this->metadataPool = $metadataPool;
55 $this->bulkCollectionFactory = $bulkCollectionFactory;
68 $metadata = $this->metadataPool->getMetadata(BulkSummaryInterface::class);
69 $connection = $this->resourceConnection->getConnectionByName($metadata->getEntityConnectionName());
73 $this->resourceConnection->getTableName(
'magento_acknowledged_bulk'),
78 $this->logger->critical($exception->getMessage());
93 $metadata = $this->metadataPool->getMetadata(BulkSummaryInterface::class);
94 $connection = $this->resourceConnection->getConnectionByName($metadata->getEntityConnectionName());
98 $this->resourceConnection->getTableName(
'magento_acknowledged_bulk'),
99 [
'bulk_uuid IN(?)' => $bulkUuids]
102 $this->logger->critical($exception->getMessage());
116 $bulks = $this->bulkCollectionFactory->create()
118 [
'acknowledged_bulk' => $this->resourceConnection->getTableName(
'magento_acknowledged_bulk')],
119 'main_table.uuid = acknowledged_bulk.bulk_uuid',
121 )->addFieldToFilter(
'user_id', $userId)
134 public function getIgnoredBulksByUser($userId)
137 $bulkCollection = $this->bulkCollectionFactory->create();
138 $bulkCollection->getSelect()->joinLeft(
139 [
'acknowledged_bulk' => $this->resourceConnection->getTableName(
'magento_acknowledged_bulk')],
140 'main_table.uuid = acknowledged_bulk.bulk_uuid',
141 [
'acknowledged_bulk.bulk_uuid']
143 $bulks = $bulkCollection->addFieldToFilter(
'user_id', $userId)
144 ->addFieldToFilter(
'acknowledged_bulk.bulk_uuid', [
'null' =>
true])
ignoreBulks(array $bulkUuids)
__construct(MetadataPool $metadataPool, ResourceConnection $resourceConnection, BulkCollectionFactory $bulkCollectionFactory, \Psr\Log\LoggerInterface $logger)
acknowledgeBulks(array $bulkUuids)
getAcknowledgedBulksByUser($userId)