• Модуль: crmmobile
  • Путь к файлу: ~/bitrix/modules/crmmobile/lib/ProductGrid/Enricher/CompletePrices.php
  • Класс: BitrixCrmMobileProductGridEnricherCompletePrices
  • Вызов: CompletePrices::enrich
public function enrich(array $rows): array
{
	$this->loadProductData($rows);

	foreach ($rows as &$productRow)
	{
		$productData = $this->getProductData($productRow);
		$basePrice = $productData['BASE_PRICE']['PRICE'] ?? 0.0;
		$baseCurrency = $productData['BASE_PRICE']['CURRENCY'] ?? null;
		$vatId = $productData['VAT_ID'] ?? 0;
		$vatIncluded = ($productData['VAT_INCLUDED'] ?? 'N') === 'Y';

		$this->taxCalculator->calculate((float)$basePrice, (int)$vatId, $vatIncluded);

		$productRow->source = $this->rebuild($productRow->source, [
			'PRICE' => $this->taxCalculator->getFinalPrice(),
			'TAX_RATE' => $this->taxCalculator->getTaxRate(),
			'TAX_INCLUDED' => $this->taxCalculator->isTaxIncluded() ? 'Y' : 'N',
		]);

		if ($baseCurrency)
		{
			$productRow->currencyId = $baseCurrency;
		}
	}

	return $rows;
}