首页>Magento>source

如何从magento2中的产品中获得税率和税率? 在magento1中,我们使用下面的代码:

       $taxClassId = $item->getData("tax_class_id");
        $taxClasses = Mage::helper("core")->jsonDecode(Mage::helper("tax")->getAllRatesByProductClass());
        $taxRate = $taxClasses["value_" . $taxClassId];
        $taxAmount = (($item->getQty() * $itemPrice * $taxRate) / 100);
最新回答
  • 2019-12-5
    1 #

    这不是一个API,但是我必须使用一次更灵活的获取税率的方法:

       // SETTING DEFAULT VALUES FOR CALCULATION EXAMPLE
        /** @var \Magento\Framework\App\Config\ScopeConfigInterface $config */
        $countryCode = $config->getValue(\Magento\Shipping\Model\Config::XML_PATH_ORIGIN_COUNTRY_ID);
        $customerTaxClassId = $config->getValue('tax/classes/default_customer_tax_class');
        /** @var \Magento\Catalog\Model\Product $product */
        $productTaxClassId = $product->getData('tax_class_id');
        // THE ACTUAL CALCULATION CALL
        /** @var \Magento\Tax\Model\Calculation $taxCalculation */
        $rate = $taxCalculation->getRate(
            new \Magento\Framework\DataObject(
                [
                    'country_id' => $countryCode,
                    'customer_class_id' => $customerTaxClassId,
                    'product_class_id' => $productTaxClassId
                ]
            )
        );
    

  • 2019-12-5
    2 #

    我使用\ Magento \ Tax \ Api \ TaxCalculationInterface获得了税率:

       $rate = $this->taxCalculation->getCalculatedRate($productTaxClassId, $customerId, $storeId);
    

相关问题

  • magento2.3.1:如何以编程方式在magento 23中对特定父类别的子类别进行排序
  • magento2:您是否需要创建集成来驱动存储过程,还是可以通过其他API来完成?