- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/basketitem.php
- Класс: BitrixSaleBasketItem
- Вызов: BasketItem::getLoggedFields
private function getLoggedFields()
{
/** @var Basket $basket */
$basket = $this->getCollection();
$orderId = $basket->getOrderId();
$changeMeaningfulFields = [
"PRODUCT_ID",
"QUANTITY",
"PRICE",
"DISCOUNT_VALUE",
"VAT_RATE",
"NAME",
];
$logFields = [];
if ($orderId > 0 && $this->isChanged())
{
$itemValues = $this->getFields();
$originalValues = $itemValues->getOriginalValues();
foreach($originalValues as $originalFieldName => $originalFieldValue)
{
if (in_array($originalFieldName, $changeMeaningfulFields) && $this->getField($originalFieldName) != $originalFieldValue)
{
$logFields[$originalFieldName] = $this->getField($originalFieldName);
$logFields['OLD_'.$originalFieldName] = $originalFieldValue;
}
}
}
return $logFields;
}