- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/order.php
- Класс: BitrixSaleOrder
- Вызов: Order::callEventOnSaleOrderEntitySaved
protected function callEventOnSaleOrderEntitySaved()
{
parent::callEventOnSaleOrderEntitySaved();
$changeMeaningfulFields = array(
"PERSON_TYPE_ID",
"CANCELED",
"STATUS_ID",
"MARKED",
"PRICE",
"SUM_PAID",
"USER_ID",
"EXTERNAL_ORDER",
);
if ($this->isChanged())
{
$logFields = array();
if (!$this->isNew)
{
$fields = $this->getFields();
$originalValues = $fields->getOriginalValues();
foreach($originalValues as $originalFieldName => $originalFieldValue)
{
if (in_array($originalFieldName, $changeMeaningfulFields) && $this->getField($originalFieldName) != $originalFieldValue)
{
$logFields[$originalFieldName] = $this->getField($originalFieldName);
$logFields['OLD_'.$originalFieldName] = $originalFieldValue;
}
}
$registry = Registry::getInstance(static::getRegistryType());
/** @var OrderHistory $orderHistory */
$orderHistory = $registry->getOrderHistoryClassName();
$orderHistory::addLog(
'ORDER',
$this->getId(),
"ORDER_UPDATE",
$this->getId(),
$this,
$logFields,
$orderHistory::SALE_ORDER_HISTORY_LOG_LEVEL_1
);
}
}
}