symfony 如何使用order_line_item.repository从Shopware6上的订单中捕获订单行项目

j2datikz  于 2023-08-06  发布在  PWA
关注(0)|答案(1)|浏览(194)

你好,我正试图筛选出的项目清单来通过一个订单的客户
第一个月
在我的课上:
use Shopware\Core\Framework\DataAbstractionLayer\EntityRepository;
private readonly EntityRepository $orderLineItemRepository;
建设等等。
现在根据我的研究,我正试图根据订单的版本ID进行过滤
$event->getOrder()->getOrderCustomer()->getVersionId()
$orderLine = $this->orderLineItemRepository->search(new Criteria([$event->getOrder()->getOrderCustomer()->getVersionId()]), ``$event->getContext())->first();
但是它总是返回空白,我需要它返回用户提交的项目列表,所以我可以在for each循环中使用如下:
$items = $order->getLineItems();

foreach ($items as $product) {
            $orderRow = [
                "sku" => $product->getProduct()->getProductNumber(),
              
            
            ];
        }

字符串
请帮助,什么是正确的方法得到的项目。我正在使用Shopware 6.5。谢啦,谢啦

2ic8powd

2ic8powd1#

经过广泛的研究,我能够通过首先访问$eveny数据集并获得订单来实现这一点

$order = $event->getOrder();

字符串
然后在订单中访问订单行项目

$lineItems = $order->getLineItems();


然后,我当然使用了for each循环来获取$ lineItems中的所有元素或字段

相关问题