如何检查购买状态是否完整

时间:2011-10-24 00:03:28

标签: magento-1.4 magento

如果购买完成,我需要检查arquivo.phtml。如果状态已完成,则会显示状态,如果没有状态,则会显示“您没有完全购买”的消息

要使用此代码,请致电所有购买

<php $ _orders = $ this-> GetOrders ();

只打电话给那些处于完全状态的人,怎么办?

2 个答案:

答案 0 :(得分:1)

这将检查订单是否完整,调整以满足您的需求:

$_orders = $this->getOrders();

foreach($_orders as $_order){
  if($_order->getStatusLabel()=='Complete'){
    echo 'You have a complete purchase';
  }
  else {
    echo 'You do not have a complete purchase';
  }
}

答案 1 :(得分:0)

我个人,我不得不为此改变核心。

在朋友的帮助下(http://www.icefusion.com.br)..

在app / code / core / Mage / Sales / Block / Order / history.php中 他把这个结构放在了我而不是那里!

    public function __construct()
{
parent::__construct();
$this->setTemplate('sales/order/history.phtml');
//TODO: add full name logic
$orders = Mage::getResourceModel('sales/order_collection')
->addAttributeToSelect('*')
->joinAttribute('shipping_firstname', 'order_address/firstname', 'shipping_address_id', null, 'left')
->joinAttribute('shipping_lastname', 'order_address/lastname', 'shipping_address_id', null, 'left')
->addAttributeToFilter('customer_id', Mage::getSingleton('customer/session')->getCustomer()->getId())
->addAttributeToFilter('state', array('in' => Mage::getSingleton('sales/order_config')->getVisibleOnFrontStates()))
->addAttributeToFilter('status', array('eq' => 'complete'))
->addAttributeToSort('created_at', 'desc');
$this->setOrders($orders);
Mage::app()->getFrontController()->getAction()->getLayout()->getBlock('root')->setHeaderTitle(Mage::helper('sales')->__('My Orders'));
}

完成,完成后,在页面seudominio.com.br / history.phtml购物,只显示状态为完成。

感谢所有帮助或尝试的人。