我有两个订单状态:已发货和订单已完成。两者都处于完成状态。在系统 - >订单状态中,我已将发货设置为"使用订单状态为默认"因为我想在管理员点击发货时将订单状态更改为"发货"自动。
现在的问题是我们有2种产品,一种是虚拟产品,一种是实体产品。所以我的想法是,当客户只购买虚拟产品时,它会显示"订单已完成"。if ($order->canInvoice())
{
$invoice = $order->prepareInvoice();
$invoice ->register()->capture();
Mage::getModel('core/resource_transaction')
->addObject($invoice)
->addObject($invoice->getOrder())
->save();
}
但是,当我以编程方式创建发票时,订单状态将为"已发货"而不是"订单已完成"。我尝试了以下代码:
$order->addStatusToHistory("order_completed", $orderMessage);
但它会将订单状态设置为"已发货"首先只改为"订单已完成"。
知道如何解决这个问题吗?