2011-05-17 75 views
1

我正在为联属计划设置一个跟踪代码。现在我们给不同的佣金。一个用于食品相关产品,一个用于非食品相关产品。这些也是我们的税收类别(食品,非食品)。获取Magento中每个税额的小计

我需要显示食品的小计和非食品的小计。

我用下面的代码,但不工作:

<?php 
    //Get Order Number & Order Total 
    $order = Mage::getModel('sales/order')->loadByIncrementId(Mage::getSingleton('checkout/session')->getLastRealOrderId()); 
    $grandamount = number_format($order->getGrandTotal(),2); 
    $coupon = $order->getCouponCode(); 
    $amountfood = number_format($order->getSubtotal('Food'), 2); 
     $amountnonfood = number_format($order->getSubtotal('Non_Food'), 2); 
    $discount = number_format(0.00 - $order->getDiscountAmount(), 2); 
?> 

如果我使用$amountfood = number_format($order->getSubtotal(), 2);它的工作的小计中既包括食品和非食品的值。

有人可以帮助我。

感谢, 丹尼尔

回答

0

我不认为这个信息,请直接:Magento的店小计和税收在全球方式,只是总,没有详细的信息。
你可以做什么,是获取订购的产品,为每个人获得他的税收类和存储阵列的销售价值。
事情是这样的:

$order = Mage::getModel('sales/order')->load($order_id); 
$items = $order->getAllItems(); 
$subtotals = array(); 
foreach ($items as $_item) { 
    if (array_key_exists($subtotals[$_item->getTaxClassId()])) { 
     $subtotals[$_item->getTaxClassId()] += $_item->getRowTotal(); 
    } else { 
     $subtotals[$_item->getTaxClassId()] = $_item->getRowTotal(); 
    } 
} 

如果“如果”是需要的,虽然不知道。
希望可以帮到