2012-08-16 33 views
1

我的排除税款被视为包含税款。现在我知道你会说我的设置搞砸了,但他们正确设置不含税。如果我为该行启用税收设置,它会显示10个牛仔裤,每个10欧元,100欧元和119(含税19%),含税。Magento:减税而不是添加

例子:

Subtotal:   100 
Shipping:   50 
Grand Total ex:  121,5 
TAX:    28,5 
Grand Total In:  150 

我发现另一起案件同样的问题,但可悲的是没有答案... http://www.magentocommerce.com/answers/Catalog-prices-do-not-include-tax-but-if-I-check-excluding-tax-my-prices-change

CopyPaste例如

Subtotal (Excl. Tax) € 65,20 
Subtotal (Incl. Tax) € 77,59 
Shipping Excl. Tax (Flat Rate - Fixed) € 50,00 
Shipping Incl. Tax (Flat Rate - Fixed) € 59,50 
Totaal Excl. BTW € 93,31 
BTW € 21,89 
Totaal Incl. BTW € 115,20 

回答

0

这是很远很远很不漂亮,但下面的作品!

19%是荷兰税额

class Mage_Sales_Model_Quote_Address_Total_Grand extends Mage_Sales_Model_Quote_Address_Total_Abstract 
{ 
    /** 
    * Collect grand total address amount 
    * 
    * @param Mage_Sales_Model_Quote_Address $address 
    * @return Mage_Sales_Model_Quote_Address_Total_Grand 
    */ 
    public function collect(Mage_Sales_Model_Quote_Address $address) 
    { 
     $grandTotal  = $address->getGrandTotal(); 
     $baseGrandTotal = $address->getBaseGrandTotal(); 

     $totals  = array_sum($address->getAllTotalAmounts()); 
     $baseTotals = array_sum($address->getAllBaseTotalAmounts()); 

     $address->setGrandTotal(($grandTotal+$totals) * 1.19); 
     $address->setBaseGrandTotal(($grandTotal+$totals) * 1.19); 
     return $this; 
    } 

    /** 
    * Add grand total information to address 
    * 
    * @param Mage_Sales_Model_Quote_Address $address 
    * @return Mage_Sales_Model_Quote_Address_Total_Grand 
    */ 
    public function fetch(Mage_Sales_Model_Quote_Address $address) 
    { 
     $address->addTotal(array(
      'code' => $this->getCode(), 
      'title' => Mage::helper('sales')->__('Grand Total'), 
      'value' => $address->getGrandTotal(), 
      'area' => 'footer', 
     )); 
     return $this; 
    } 
}