小编mtn*_*cll的帖子

getRate()和Magento税率

我正在尝试获取给定邮政编码的税率(百分比,而不是货币),以便我可以在第三方报价PDF打印输出中显示(与Magento用作购物车预签出的"报价"无关) .虽然我对Magento仍然相对较新,但似乎getRateRequest()和getRate()是基于所有变量(产品税级,客户税级等)获得税率的两个主要功能.

由于这是针对第三方扩展而且我们所有的产品都是应税的,我想我会使用正确的Varien对象输入的getRate(),它会返回税率.经过一周的反复试验,我无法弄清楚为什么我总是得到零率.我已经确认我正在调用getRate()函数,并且它没有从第一个if()语句检查Country和Customer/Product类ID返回零.此外,我已经确认所有变量都在getRate()函数本身中传递和访问.

我创建了一个带有以下输入的对象(基于getRateRequest()的输出),我用getRate()调用它,并希望有人可以了解我的数据输入有什么问题或为什么getRate()函数是总是返回零的结果.(我实际上设置了下面的$变量,它们刚刚定义得更早,我的测试用例值之一在下面)

    // UPDATED CODE (variable values come from 3rd party quote extension)

    $country = 'US';  // use short country code
    $region = '12';   // must be numeric!
    $postcode = '95050';
    // our quote extension stores the customer id ('2') which we use to get the tax class
    $customer = Mage::getModel('customer/customer')->load( '2' );
    $custTax = $customer->getTaxClassId();

    $TaxRequest  = new Varien_Object();
    $TaxRequest->setCountryId( $country );
    $TaxRequest->setRegionId( $region );
    $TaxRequest->setPostcode( $postcode );
    $TaxRequest->setStore( Mage::app()->getStore() );
    $TaxRequest->setCustomerClassId( $custTax );
    $TaxRequest->setProductClassId(2);  // 2=taxable …
Run Code Online (Sandbox Code Playgroud)

magento

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

magento ×1