...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/counter/monitor/monitorbyactresponsible.php
- Класс: Bitrix\Crm\Counter\Monitor\MonitorByActResponsible
- Вызов: MonitorByActResponsible::processActivitiesChanges
protected function processActivitiesChanges(): void { $changedActivities = $this->activitiesChangesCollection->getSignificantlyChangedActivities(true); $affectedBindings = $changedActivities->getAffectedBindings(); $entitiesData = $this->loadEntitiesDataForBindings($affectedBindings); /** @var $changedActivity ActivityChange */ foreach ($changedActivities->getValues() as $changedActivity) { $affectedResponsibleIds = []; if ($changedActivity->getNewResponsibleId() > 0) { $affectedResponsibleIds[] = $changedActivity->getNewResponsibleId(); } if ($changedActivity->isResponsibleIdChanged() && $changedActivity->getOldResponsibleId() > 0) { $affectedResponsibleIds[] = $changedActivity->getOldResponsibleId(); } foreach ($affectedResponsibleIds as $responsibleId) { $affectedTypeIds = $changedActivity->getAffectedCounterTypes(true); /** @var $binding ItemIdentifier */ foreach ($changedActivity->getAffectedBindings() as $binding) { $entityData = $entitiesData[$binding->getEntityTypeId()][$binding->getEntityId()] ?? []; $this->resetCounters( $binding->getEntityTypeId(), $affectedTypeIds, $responsibleId, $entityData['categoryId'] ?? null, ); } } } }