Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Public Member Functions
BulkStatus Class Reference
Inheritance diagram for BulkStatus:
BulkStatusInterface

Public Member Functions

 __construct (\Magento\AsynchronousOperations\Model\ResourceModel\Bulk\CollectionFactory $bulkCollection, \Magento\AsynchronousOperations\Model\ResourceModel\Operation\CollectionFactory $operationCollection, ResourceConnection $resourceConnection, CalculatedStatusSql $calculatedStatusSql, MetadataPool $metadataPool)
 
 getFailedOperationsByBulkId ($bulkUuid, $failureType=null)
 
 getBulkStatus ($bulkUuid)
 
- Public Member Functions inherited from BulkStatusInterface
 getOperationsCountByBulkIdAndStatus ($bulkUuid, $status)
 
 getBulksByUser ($userId)
 

Detailed Description

Class BulkStatus

Definition at line 18 of file BulkStatus.php.

Constructor & Destructor Documentation

◆ __construct()

__construct ( \Magento\AsynchronousOperations\Model\ResourceModel\Bulk\CollectionFactory  $bulkCollection,
\Magento\AsynchronousOperations\Model\ResourceModel\Operation\CollectionFactory  $operationCollection,
ResourceConnection  $resourceConnection,
CalculatedStatusSql  $calculatedStatusSql,
MetadataPool  $metadataPool 
)

BulkStatus constructor.

Parameters
ResourceModel\Bulk\CollectionFactory$bulkCollection
ResourceModel\Operation\CollectionFactory$operationCollection
ResourceConnection$resourceConnection
CalculatedStatusSql$calculatedStatusSql
MetadataPool$metadataPool

Definition at line 53 of file BulkStatus.php.

59  {
60  $this->operationCollectionFactory = $operationCollection;
61  $this->bulkCollectionFactory = $bulkCollection;
62  $this->resourceConnection = $resourceConnection;
63  $this->calculatedStatusSql = $calculatedStatusSql;
64  $this->metadataPool = $metadataPool;
65  }

Member Function Documentation

◆ getBulkStatus()

getBulkStatus (   $bulkUuid)

@inheritDoc

Number of operations that has been processed (i.e. operations with any status but 'open')

Total number of operations that has been scheduled within the given bulk

Number of operations that has not been started yet (i.e. operations with status 'open')

Number of operations that has been completed successfully

Implements BulkStatusInterface.

Definition at line 140 of file BulkStatus.php.

141  {
145  $allProcessedOperationsQty = (int)$this->operationCollectionFactory->create()
146  ->addFieldToFilter('bulk_uuid', $bulkUuid)
147  ->getSize();
148 
149  if ($allProcessedOperationsQty == 0) {
151  }
152 
156  $allOperationsQty = $this->getOperationCount($bulkUuid);
157 
161  $allOpenOperationsQty = $allOperationsQty - $allProcessedOperationsQty;
162 
166  $allCompleteOperationsQty = $this->operationCollectionFactory->create()
167  ->addFieldToFilter('bulk_uuid', $bulkUuid)->addFieldToFilter(
168  'status',
170  )->getSize();
171 
172  if ($allCompleteOperationsQty == $allOperationsQty) {
174  }
175 
176  if ($allOpenOperationsQty > 0 && $allOpenOperationsQty !== $allOperationsQty) {
178  }
179 
181  }

◆ getFailedOperationsByBulkId()

getFailedOperationsByBulkId (   $bulkUuid,
  $failureType = null 
)

@inheritDoc

Implements BulkStatusInterface.

Definition at line 70 of file BulkStatus.php.

71  {
72  $failureCodes = $failureType
73  ? [$failureType]
74  : [
77  ];
78  $operations = $this->operationCollectionFactory->create()
79  ->addFieldToFilter('bulk_uuid', $bulkUuid)
80  ->addFieldToFilter('status', $failureCodes)
81  ->getItems();
82  return $operations;
83  }
$operations
Definition: bulk.php:55

The documentation for this class was generated from the following file: