我想在 Magento 管理订单部分更改为按钮操作,在查看了这里的很多帖子后,我找不到满足我问题的答案:
问题:我希望能够单击订单上的打印发票按钮并使其自动更改为已发货状态,当我使用跟踪号将运输添加到订单并单击提交时,我希望该状态更改为已发货..我想知道如何做到这一点?
总结:状态更改为已发货 - 打印发票时 状态更改为完成 - 订单发货时
我假设我将开始编辑本节:app/code/core/Mage/Adminhtml/Block/Sales/Order/View.php
要更改订单的状态,指令是:
$order->setState('your state', true);
前任。:
$order->setState('complete', true);
要获得您想要的内容,您应该编辑在打印发票或创建货件时调用的控制器。它的 :
/app/code/core/Mage/Adminhtml/Controller/Sales/Invoice.php 在 printAction() 方法中的行之后:
$pdf = Mage::getModel('sales/order_pdf_invoice')->getPdf(array($invoice));
用于打印发票和
/app/code/core/Mage/Adminhtml/controllers/Sales/Order/ShipmentController.php 在 saveAction() 方法中的行之后:
$shipment->register();
但是编辑Controller是最简单但最糟糕的解决方案。如果你熟悉 Magento 和 php,你可以通过模型或事件来做到这一点。
此致,