- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/Badge/Badge.php
- Класс: Bitrix\Crm\Badge\Badge
- Вызов: Badge::rebindSource
static function rebindSource(SourceIdentifier $oldSource, SourceIdentifier $newSource): void
{
$dbResult = BadgeTable::query()
->where('SOURCE_PROVIDER_ID', $oldSource->getProviderId())
->where('SOURCE_ENTITY_TYPE_ID', $oldSource->getEntityTypeId())
->where('SOURCE_ENTITY_ID', $oldSource->getEntityId())
->exec()
;
while ($row = $dbResult->fetchObject())
{
$row
->set('SOURCE_PROVIDER_ID', $newSource->getProviderId())
->set('SOURCE_ENTITY_TYPE_ID', $newSource->getEntityTypeId())
->set('SOURCE_ENTITY_ID', $newSource->getEntityId())
;
$row->save();
}
}