如何在自定义模块
中取消订单中未完成订单的特定项目
答案 0 :(得分:1)
我找到了一个解决方案,用于如何从特定订单商品的set setQtyCanceled()的整个订单中取消特定商品:
$orderDetail = $this->_objectManager->create('Magento\Sales\Model\Order')->load(1);
if ($orderDetail->canCancel()) {
$orderItems = $orderDetail->getAllItems();
foreach ($orderItems as $value) {
if($value['product_id']==122))
{
$value->setQtyCanceled($value['qty_ordered']);
$value->save();
}
else
{
continue;
}
}
$orderDetail->save();
}
这里我要取消订单号为1且产品编号为122的订单商品。 这对我有用