You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取定制化产品订单中lineItems.product的productNumber

解决定制订单无法获取productNumber的问题

针对customized-products类型订单拿不到productNumber的问题,核心是你没关联到定制产品对应的扩展实体。结合你提到的productOswag_customized_products_templateptions扩展,按以下步骤修改:

1. 添加正确的关联路径

在你的查询条件里,新增定制产品扩展的关联;若需要获取模板产品的productNumber,还要关联到模板产品实体:

$this->context = $context;
$criteria      = new Criteria([$orderId]);
$criteria->addAssociation(OrderExtension::DSM_INTEGRATION_ORDER);
$criteria->addAssociation('addresses');
$criteria->addAssociation('billingAddress.country');
$criteria->addAssociation('transactions.paymentMethod');
$criteria->addAssociation('deliveries.shippingMethod');
$criteria->addAssociation('deliveries.shippingOrderAddress.country');
$criteria->addAssociation('lineItems.product');
$criteria->addAssociation('lineItems.product.tags');
$criteria->addAssociation('lineItems.product.options');
$criteria->addAssociation('orderCustomer.customer');
// 新增定制产品扩展关联
$criteria->addAssociation('lineItems.product.extensions.oswag_customized_products_templateptions');
// 若需要模板产品的productNumber,添加此关联
$criteria->addAssociation('lineItems.product.extensions.oswag_customized_products_templateptions.templateProduct');

$result = $this->orderRepository->search($criteria, $context);

2. 获取productNumber的逻辑

处理订单行项目时,判断产品类型为customized-products后,从扩展字段里提取productNumber:

foreach ($result->first()->getLineItems() as $lineItem) {
    $product = $lineItem->getProduct();
    if ($product->getType() === 'customized-products') {
        // 获取定制产品扩展实体
        $customizedExtension = $product->getExtension('oswag_customized_products_templateptions');
        // 从模板产品中取productNumber(根据实际字段调整)
        $productNumber = $customizedExtension->getTemplateProduct()->getProductNumber();
        // 如果扩展实体自身直接存储productNumber,用下面这行
        // $productNumber = $customizedExtension->getProductNumber();
    } else {
        // 普通产品直接取productNumber
        $productNumber = $product->getProductNumber();
    }
}

内容的提问来源于stack exchange,提问作者Ifnir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 03:41:42