1
如果訂單被取消,我需要將金額退還給客戶。我想根據結果初步處理退款(它是在線退款系統),我將取消訂單。所以我在取消訂單之前或保存訂單對象前查找事件。我嘗試使用sales_order_save_before
事件。但它不起作用。我認爲這個事件不存在。有任何想法嗎 ..?以前是否有任何取消訂單的事件或保存訂單?
如果訂單被取消,我需要將金額退還給客戶。我想根據結果初步處理退款(它是在線退款系統),我將取消訂單。所以我在取消訂單之前或保存訂單對象前查找事件。我嘗試使用sales_order_save_before
事件。但它不起作用。我認爲這個事件不存在。有任何想法嗎 ..?以前是否有任何取消訂單的事件或保存訂單?
您可以嘗試controller_action_predispatch_sales_order_cancel
要記錄所有事件都遵循Mage.php變化:
File: app/Mage.php
public static function dispatchEvent($name, array $data = array())
{
Mage::log('Event: ' . $name); //not using Mage::log, as
//file_put_contents('/tmp/test.log','Dispatching '. $name. "\n",FILE_APPEND); //poor man's log
Varien_Profiler::start('DISPATCH EVENT:'.$name);
$result = self::app()->dispatchEvent($name, $data);
#$result = self::registry('events')->dispatch($name, $data);
Varien_Profiler::stop('DISPATCH EVENT:'.$name);
return $result;
}
加入上面的代碼後,取消訂單,然後檢查SYSTEM.LOG。它將記錄取消訂單操作之前,期間和之後發生的所有事件。您將能夠從此日誌中找到適合您的活動。
希望這會有所幫助。
這裏有一個很好的事件cheatsheet:https://www.nicksays.co.uk/magento-events-cheat-sheet-1-7/ – Karl
是的,我知道。但是我找不到與我的情況有關的事件。 – Elavarasan