2011-05-17 4 views
1

Je suis en train de configurer un code de suivi pour un programme d'affiliation. Maintenant, nous donnons différentes commissions. Un pour les produits liés aux aliments et un pour les produits non liés aux aliments. Ce sont aussi les classes d'impôt que nous avons (nourriture, non alimentaire).Obtenir le sous-total pour chaque valeur fiscale dans Magento

Je dois afficher le sous-total pour les produits alimentaires et un sous-total pour les produits non alimentaires.

J'utilise le code suivant, mais cela ne fonctionne pas:

<?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); 
?> 

Si je $amountfood = number_format($order->getSubtotal(), 2); il travaille pour le sous-total, y compris la nourriture et les valeurs non alimentaires.

Quelqu'un pourrait m'aider s'il vous plaît avec ça.

Merci, Daniel

Répondre

0

Je ne pense pas que ces informations sont disponibles directement: magento stocke le sous-total et les taxes de manière globale , seul le total, aucune information détaillée.
Ce que vous pourriez faire, c'est aller chercher les produits commandés, pour chacun obtenir sa classe d'impôt et stocker dans un tableau la valeur de vente.
Quelque chose comme ceci:

$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(); 
    } 
} 

ne sais pas si le « si » est nécessaire si.
espérons que cela aide

Questions connexes