/** * Invoke OrderCommentsList service * * @param int $id * @return \Magento\Sales\Service\V1\Data\OrderStatusHistorySearchResults */ public function invoke($id) { $this->criteriaBuilder->addFilter(['eq' => $this->filterBuilder->setField('parent_id')->setValue($id)->create()]); $criteria = $this->criteriaBuilder->create(); $comments = []; foreach ($this->historyRepository->find($criteria) as $comment) { $comments[] = $this->historyMapper->extractDto($comment); } return $this->searchResultsBuilder->setItems($comments)->setSearchCriteria($criteria)->setTotalCount(count($comments))->create(); }