Skip to content

Commit 09c4efc

Browse files
committed
Resolve SVC Checker Issue
1 parent 68ba1e3 commit 09c4efc

File tree

1 file changed

+62
-0
lines changed
  • app/code/Magento/Bundle/ViewModel/Sales/Order/Items

1 file changed

+62
-0
lines changed
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
declare(strict_types=1);
7+
8+
namespace Magento\Bundle\ViewModel\Sales\Order\Items;
9+
10+
use Magento\Framework\View\Element\Block\ArgumentInterface;
11+
use Magento\Sales\Model\ResourceModel\Order\Item\CollectionFactory;
12+
use Magento\Sales\Api\Data\OrderItemInterface;
13+
14+
/**
15+
* ViewModel for Bundle Items
16+
*/
17+
class Renderer implements ArgumentInterface
18+
{
19+
/**
20+
* @var CollectionFactory
21+
*/
22+
private $itemCollectionFactory;
23+
24+
/**
25+
* @param CollectionFactory $itemCollectionFactory
26+
*/
27+
public function __construct(
28+
CollectionFactory $itemCollectionFactory
29+
) {
30+
$this->itemCollectionFactory = $itemCollectionFactory;
31+
}
32+
33+
/**
34+
* Get Bundle Order Item Collection.
35+
*
36+
* @param int $orderId
37+
* @param int $parentId
38+
*
39+
* @return array|null
40+
*/
41+
public function getOrderItems(int $orderId, int $parentId): ?array
42+
{
43+
$collection = $this->itemCollectionFactory->create();
44+
$collection->setOrderFilter($orderId);
45+
$collection->addFieldToFilter(
46+
[OrderItemInterface::ITEM_ID, OrderItemInterface::PARENT_ITEM_ID],
47+
[
48+
['eq' => $parentId],
49+
['eq' => $parentId]
50+
]
51+
);
52+
53+
$items = [];
54+
55+
foreach ($collection ?? [] as $item) {
56+
$items[] = $item;
57+
}
58+
$collection->clear();
59+
60+
return $items;
61+
}
62+
}

0 commit comments

Comments
 (0)