Skip to content

Commit bb8fd35

Browse files
cparticaAnna Bukatar
authored andcommitted
MAGETWO-49212: [GITHUB] Magento\Sales\Model\OrderRepository::getList() is incomplete #3018
- added sort to the search logic
1 parent b6bb8e5 commit bb8fd35

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

app/code/Magento/Sales/Model/OrderRepository.php

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
use Magento\Sales\Api\Data\ShippingAssignmentInterface;
1616
use Magento\Framework\Exception\NoSuchEntityException;
1717
use Magento\Framework\Exception\InputException;
18+
use Magento\Framework\Api\SortOrder;
1819

1920
/**
2021
* Repository class for @see OrderInterface
@@ -96,7 +97,6 @@ public function get($id)
9697
*/
9798
public function getList(\Magento\Framework\Api\SearchCriteria $searchCriteria)
9899
{
99-
//@TODO: fix search logic
100100
/** @var \Magento\Sales\Api\Data\OrderSearchResultInterface $searchResult */
101101
$searchResult = $this->searchResultFactory->create();
102102
foreach ($searchCriteria->getFilterGroups() as $filterGroup) {
@@ -105,6 +105,20 @@ public function getList(\Magento\Framework\Api\SearchCriteria $searchCriteria)
105105
$searchResult->addFieldToFilter($filter->getField(), [$condition => $filter->getValue()]);
106106
}
107107
}
108+
109+
$sortOrders = $searchCriteria->getSortOrders();
110+
if ($sortOrders === null) {
111+
$sortOrders = [];
112+
}
113+
/** @var \Magento\Framework\Api\SortOrder $sortOrder */
114+
foreach ($sortOrders as $sortOrder) {
115+
$field = $sortOrder->getField();
116+
$searchResult->addOrder(
117+
$field,
118+
($sortOrder->getDirection() == SortOrder::SORT_ASC) ? 'ASC' : 'DESC'
119+
);
120+
}
121+
108122
$searchResult->setCurPage($searchCriteria->getCurrentPage());
109123
$searchResult->setPageSize($searchCriteria->getPageSize());
110124
foreach ($searchResult->getItems() as $order) {

0 commit comments

Comments
 (0)