• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/update/crmentitycreatorstepper.php
  • Класс: BitrixSaleUpdateCrmEntityCreator
  • Вызов: CrmEntityCreator::getHistoryChanges
private function getHistoryChanges(): array
{
	$arHistoryData = [];

	$arFilterHistory = ["ORDER_ID" => $this->order->getId()];
	$arFilterHistory["@TYPE"] = ["ORDER_STATUS_CHANGED"];

	$dbOrderChange = SaleInternalsOrderChangeTable::getList([
		"select" => ["*"],
		"filter" => $arFilterHistory,
		"order" => [
			"DATE_CREATE" => "DESC",
			"ID" => "ASC"
		],
		'limit' => 10,
	]);
	while ($arChangeRecord = $dbOrderChange->fetch())
	{
		$arHistoryData[] = $arChangeRecord;
	}

	MainTypeCollection::sortByColumn($arHistoryData, ['ID' => SORT_ASC]);

	$dbRes = new CDBResult();
	$dbRes->InitFromArray($arHistoryData);

	$result = [];
	while ($arRes = $dbRes->Fetch())
	{
		if (CheckSerializedData($arRes["DATA"]))
		{
			$data = unserialize($arRes["DATA"], ['allowed_classes' => false]);
			if ($arRes["TYPE"] === "ORDER_STATUS_CHANGED")
			{
				$result[] = [
					"TYPE" => $arRes["TYPE"],
					"DATA" => [
						"CURRENT" => $data["STATUS_ID"],
						"OLD" => $data["OLD_STATUS_ID"],
					],
				];
			}
		}
	}

	return $result;
}