• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/compatible/ordercompatibility.php
  • Класс: BitrixSaleCompatibleOrderCompatibility
  • Вызов: OrderCompatibility::fillTaxFromRequest
public function fillTaxFromRequest(SaleTax $tax, array $fields)
{
	if (!empty($fields['COUNT_DELIVERY_TAX']))
	{
		$tax->setDeliveryCalculate(($fields['COUNT_DELIVERY_TAX'] == "Y"));
	}

	if (!empty($fields['TAX_LIST']) && is_array($fields['TAX_LIST']))
	{
		$tax->initTaxList($fields['TAX_LIST']);
	}
	elseif (!empty($tax->getTaxList()))
	{
		/** @var SaleOrder $order */
		if ($order = $this->getOrder())
		{
			$order->refreshVat();
			if ($tax = $order->getTax())
			{
				$tax->resetTaxList();
			}
		}
	}

	if (array_key_exists('TAX_VALUE', $fields))
	{
		$order = $this->getOrder();
		$order->setFieldNoDemand('TAX_VALUE', floatval($fields['TAX_VALUE']));
	}

	return new SaleResult();
}