- Модуль: salescenter
- Путь к файлу: ~/bitrix/modules/salescenter/lib/controller/order.php
- Класс: BitrixSalesCenterControllerOrder
- Вызов: Order::prepareProductList
private function prepareProductList(array $products): array
{
$result = [];
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'] ?? CrmDiscount::MONETARY,
'discountRate' => $product['DISCOUNT_RATE'],
'discountSum' => $product['DISCOUNT_SUM'] ?? 0,
];
}
if ($product['TAX_RATE'])
{
$item['tax'] = [
'id' => $this->getVatRateIdByValue($product['TAX_RATE']),
'included' => $product['TAX_INCLUDED'] === 'Y',
];
}
$result[] = $item;
}
return $result;
}