0

当我从管理面板更改订单交付状态时,我想向客户发送通知短信,从印度购买短信服务

4

1 回答 1

1

您需要检查订单状态以进行更改 - 没有针对此的事件,因此您需要:

事件:sales_order_load_after获取加载后的订单状态方法:

public function fetchOrderStatus(Varien_Event_Observer $observer){
    try{
      if (!Mage::registry('cartware_order_status')){
        Mage::register('cartware_order_status', $observer->getOrder()->getStatus());
      }
    }
    catch (Exception $e){
      Mage::logException("UNEXPECTED PROBLEM WIH REGISTER");
      Mage::logException($e);
    }
    return;
  } 

事件:sales_order_save_after保存后获取订单状态: 方法:

public function checkOrderStatus(Varien_Event_Observer $observer){
    try{
      if(!Mage::registry('cartware_order_status')){
        return;
      }else{
        $orderStatus = Mage::registry('cartware_order_status');
      }
    }
    catch (Exception $e){
      Mage::logException("UNEXPECTED PROBLEM WIH REGISTRY");
      Mage::logException($e);
    }

    if ($orderStatus != $observer->getOrder()->getStatus() &&
    $observer->getOrder()->getStatus() == [STATUS YOU WANT TO REACT IF CHANGE TO]){
       sendYourSmsMethod();
    }
  } 

祝你好运!

于 2013-06-29T11:57:16.353 回答