Magento-添加来自观察者事件的订单注释
我一直在为此痛打自己,希望有人能帮助我 我有几个观察者事件运行得很好,只是其中一个似乎不起作用 creditmemoRefund函数不会向订单添加注释。命令2工作正常,它确实像预期的那样开火,并且确实拉动了命令对象。为什么不加评论呢 这是我的密码 config.xmlMagento-添加来自观察者事件的订单注释,magento,comments,audit,Magento,Comments,Audit,我一直在为此痛打自己,希望有人能帮助我 我有几个观察者事件运行得很好,只是其中一个似乎不起作用 creditmemoRefund函数不会向订单添加注释。命令2工作正常,它确实像预期的那样开火,并且确实拉动了命令对象。为什么不加评论呢 这是我的密码 config.xml <?xml version="1.0"?> <config> <modules> <Avi_OrderAudit> <version>0.0.1&
<?xml version="1.0"?>
<config>
<modules>
<Avi_OrderAudit>
<version>0.0.1</version>
</Avi_OrderAudit>
</modules>
<global>
<helpers>
<orderaudit>
<class>Avi_OrderAudit_Helper</class>
</orderaudit>
</helpers>
<models>
<orderaudit>
<class>Avi_OrderAudit_Model</class>
<resourceModel>orderaudit_mysql4</resourceModel>
</orderaudit>
</models>
<events>
<sales_order_place_after> <!-- identifier of the event we want to catch -->
<observers>
<sales_order_place_after_handler> <!-- identifier of the event handler -->
<type>model</type> <!-- class method call type; valid are model, object and singleton -->
<class>orderaudit/observer</class> <!-- observers class alias -->
<method>orderPlaced</method> <!-- observer's method to be called -->
<args></args> <!-- additional arguments passed to observer -->
</sales_order_place_after_handler>
</observers>
</sales_order_place_after>
<sales_order_payment_capture> <!-- identifier of the event we want to catch -->
<observers>
<sales_order_payment_capture_handler> <!-- identifier of the event handler -->
<type>model</type> <!-- class method call type; valid are model, object and singleton -->
<class>orderaudit/observer</class> <!-- observers class alias -->
<method>paymentCapture</method> <!-- observer's method to be called -->
<args></args> <!-- additional arguments passed to observer -->
</sales_order_payment_capture_handler>
</observers>
</sales_order_payment_capture>
<sales_order_creditmemo_refund> <!-- identifier of the event we want to catch -->
<observers>
<sales_order_creditmemo_refund_handler> <!-- identifier of the event handler -->
<type>model</type> <!-- class method call type; valid are model, object and singleton -->
<class>orderaudit/observer</class> <!-- observers class alias -->
<method>creditmemoRefund</method> <!-- observer's method to be called -->
<args></args> <!-- additional arguments passed to observer -->
</sales_order_creditmemo_refund_handler>
</observers>
</sales_order_creditmemo_refund>
</events>
0.0.1
Avi_OrderAudit_助手
Avi_OrderAudit_模型
orderaudit_mysql4
模型
订单审核/观察员
订购
模型
订单审核/观察员
薪酬捕获
模型
订单审核/观察员
信用记忆基金
Observer.php
类Avi_OrderAudit_Model_Observer
{
public function orderplacted(变量事件观察者$Observer)
{
if(Mage::getSingleton('admin/session')->isLoggedIn(){
//如果管理员
$order=$observer->getEvent()->getOrder();
$user=Mage::getSingleton('admin/session');
$username=$user->getUser()->getUsername();
$comment=“订单由”下,$username.”;
$order->addStatusHistoryComment($comment)
->setIsVisibleOnFront(错误)
->setIsCustomerNotified(假);
}
否则{
//由客户在线放置
$order=$observer->getEvent()->getOrder();
$order->addStatusHistoryComment('客户在线下的订单')
->setIsVisibleOnFront(错误)
->setIsCustomerNotified(假);
}
}
公共功能付费捕获(Varien_Event_Observer$Observer)
{
$invoice=$observer->getEvent()->getInvoice();
$order=$invoice->getOrder();
$user=Mage::getSingleton('admin/session');
$username=$user->getUser()->getUsername();
$comment=“由捕获的付款。”$username。””;
$order->addStatusHistoryComment($comment)
->setIsVisibleOnFront(错误)
->setIsCustomerNotified(假);
}
公共功能creditmemoRefund(变量事件观察者$Observer)
{
$creditmemo=$observer->getEvent()->getCreditmemo();
$order=$creditmemo->getOrder();
$user=Mage::getSingleton('admin/session');
$username=$user->getUser()->getUsername();
$comment=“通过退款”。$username.”;
$order->addStatusHistoryComment($comment)
->setIsVisibleOnFront(错误)
->setIsCustomerNotified(假);
}
}
之后
$order->addStatusHistoryComment($comment)
->setIsVisibleOnFront(false)
->setIsCustomerNotified(false);
你需要
$order->save();
我相信我有另一个模块观察同样的事件。禁用了所有本地和社区模块,它开始正常工作。
$order->save();