我使用的是magento CE 1.7
。我想显示已开具发票或发货人的订单用户名,以便与评论历史记录一起显示。我覆盖Mage_Sales_OrderController
以将用户名附加到addCommentAction(){..}
中。但它只有在用户添加注释时才有效,而不是在创建/开具订单发票时。有什么建议吗?
修复了它。以下是解决方案。我已覆盖Mage_Sales_Model_Order
class Add_OrderComment_Model_Order extends Mage_Sales_Model_Order
{
public function addStatusHistoryComment($comment, $status = false)
{
if(Mage::getSingleton('admin/session')->isLoggedIn())
{
// Getting admin username.
$user = Mage::getSingleton('admin/session');
$username = $user->getUser()->getUsername();
$append = " <strong>(Updated by : ".$username.")</strong>";
}
else
{
$append = "";
}
if (false === $status) {
$status = $this->getStatus();
} elseif (true === $status) {
$status = $this->getConfig()->getStateDefaultStatus($this->getState());
} else {
$this->setStatus($status);
}
$history = Mage::getModel('sales/order_status_history')
->setStatus($status)
->setComment($comment.$append)
->setEntityName($this->_historyEntityName);
$this->addStatusHistory($history);
return $history;
}
}