- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/internals/counter/processor/efficiencyprocessor.php
- Класс: BitrixTasksInternalsCounterProcessorEfficiencyProcessor
- Вызов: EfficiencyProcessor::updateEfficiencyForRestored
private function updateEfficiencyForRestored(int $taskId): array
{
/** @var EventResource $task */
$task = $this->modifiedData[$taskId];
$taskMembers = $task->getMembersAsArray();
$membersMap = array_fill_keys(
$taskMembers[MemberTable::MEMBER_TYPE_ACCOMPLICE],
MemberTable::MEMBER_TYPE_ACCOMPLICE
);
$membersMap[current($taskMembers[MemberTable::MEMBER_TYPE_RESPONSIBLE])] = MemberTable::MEMBER_TYPE_RESPONSIBLE;
$taskData = [
'ID' => $taskId,
'TITLE' => $task->getTitle(),
'DEADLINE' => $task->getDeadline(),
'CREATED_BY' => current($taskMembers[MemberTable::MEMBER_TYPE_ORIGINATOR]),
];
$processedMembers = [];
foreach ($membersMap as $userId => $type)
{
Effective::modify($userId, $type, $taskData, $task->getGroupId(), $task->isExpired(), false);
$processedMembers[$userId] = $userId;
}
return $processedMembers;
}