collectionFactory = $collectionFactory; $this->netsuitefactory = $netsuitefactory; } /** * Hold selected orders * * @param AbstractCollection $collection * @return \Magento\Backend\Model\View\Result\Redirect */ protected function massAction(AbstractCollection $collection) { $countOrder = 0; foreach ($collection->getItems() as $order) { if (!$order->getEntityId()) { continue; } $order->setNetsuiteMaxAttempt(0); $order->setPushToNetsuite(0); $order->setNetsuiteCreatedAt(null); $order->setNetsuiteId(null); $order->save(); $countOrder++; } $countNonPushOrder = $collection->count() - $countOrder; if ($countNonPushOrder && $countOrder) { $this->messageManager->addError(__('%1 order(s) were not pushed to NetSuite.', $countNonPushOrder)); } elseif ($countNonPushOrder) { $this->messageManager->addError(__('No order(s) were reset to NetSuite.')); } if ($countOrder) { $this->messageManager->addSuccess(__('Reset %1 order(s) for NetSuite orders.', $countOrder)); } $resultRedirect = $this->resultRedirectFactory->create(); $resultRedirect->setPath($this->getComponentRefererUrl()); return $resultRedirect; } }