/** * Clear tax related total values in address * * @param Address $address * @return void */ protected function clearValues(Address $address) { $address->setTotalAmount('subtotal', 0); $address->setBaseTotalAmount('subtotal', 0); $address->setTotalAmount('tax', 0); $address->setBaseTotalAmount('tax', 0); $address->setTotalAmount('discount_tax_compensation', 0); $address->setBaseTotalAmount('discount_tax_compensation', 0); $address->setTotalAmount('shipping_discount_tax_compensation', 0); $address->setBaseTotalAmount('shipping_discount_tax_compensation', 0); $address->setSubtotalInclTax(0); $address->setBaseSubtotalInclTax(0); }
/** * Update tax related fields for shipping * * @param QuoteAddress $address * @param TaxDetailsItemInterface $shippingTaxDetails * @param TaxDetailsItemInterface $baseShippingTaxDetails * @return $this */ protected function processShippingTaxInfo(QuoteAddress $address, $shippingTaxDetails, $baseShippingTaxDetails) { $address->setTotalAmount('shipping', $shippingTaxDetails->getRowTotal()); $address->setBaseTotalAmount('shipping', $baseShippingTaxDetails->getRowTotal()); $address->setTotalAmount('shipping_hidden_tax', $shippingTaxDetails->getDiscountTaxCompensationAmount()); $address->setBaseTotalAmount('shipping_hidden_tax', $baseShippingTaxDetails->getDiscountTaxCompensationAmount()); $address->setShippingInclTax($shippingTaxDetails->getRowTotalInclTax()); $address->setBaseShippingInclTax($baseShippingTaxDetails->getRowTotalInclTax()); $address->setShippingTaxAmount($shippingTaxDetails->getRowTax()); $address->setBaseShippingTaxAmount($baseShippingTaxDetails->getRowTax()); //Add the shipping tax to total tax amount $address->addTotalAmount('tax', $shippingTaxDetails->getRowTax()); $address->addBaseTotalAmount('tax', $baseShippingTaxDetails->getRowTax()); if ($this->_config->discountTax($address->getQuote()->getStore())) { $address->setShippingAmountForDiscount($shippingTaxDetails->getRowTotalInclTax()); $address->setBaseShippingAmountForDiscount($baseShippingTaxDetails->getRowTotalInclTax()); } return $this; }
/** * Clear tax related total values in address * * @param Address $address * @return void */ protected function clearValues(Address $address) { $address->setTotalAmount('subtotal', 0); $address->setBaseTotalAmount('subtotal', 0); $address->setTotalAmount('tax', 0); $address->setBaseTotalAmount('tax', 0); $address->setTotalAmount('hidden_tax', 0); $address->setBaseTotalAmount('hidden_tax', 0); $address->setTotalAmount('shipping_hidden_tax', 0); $address->setBaseTotalAmount('shipping_hidden_tax', 0); $address->setSubtotalInclTax(0); $address->setBaseSubtotalInclTax(0); }