- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/integration/compilationmanager.php
- Класс: Bitrix\Crm\Integration\CompilationManager
- Вызов: CompilationManager::getProductListForOrderBoundEvent
static function getProductListForOrderBoundEvent($dealId)
{
$productList = [];
$products = \CCrmProductRow::LoadRows('D', $dealId);
$vatList = \CCrmTax::GetVatRateInfos();
foreach ($products as $product)
{
$item = [
'id' => $product['PRODUCT_ID'],
'name' => $product['PRODUCT_NAME'],
'price' => $product['PRICE'],
'quantity' => $product['QUANTITY'],
'measureName' => $product['MEASURE_NAME'],
'measureCode' => $product['MEASURE_CODE'],
'customized' => $product['CUSTOMIZED']
];
if ($product['DISCOUNT_RATE'])
{
$item['discount'] = [
'discountType' => $product['DISCOUNT_TYPE'],
'discountRate' => $product['DISCOUNT_RATE'],
'discountSum' => $product['DISCOUNT_SUM'],
];
}
if ($product['TAX_RATE'])
{
$taxId = 0;
foreach ($vatList as $vat)
{
if ((int)$vat['VALUE'] === (int)$product['TAX_RATE'])
{
$taxId = $vat['ID'];
}
}
$item['tax'] = [
'id' => $taxId,
'included' => $product['TAX_INCLUDED'] === 'Y',
];
}
$productList[] = $item;
}
return $productList;
}