• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/internals/effective.php
  • Класс: BitrixTasksInternalsEffective
  • Вызов: Effective::getEfficiencyForNow
static function getEfficiencyForNow($userId, $groupId = 0)
{
	static $cache = [];

	if (array_key_exists($userId, $cache) && array_key_exists($groupId, $cache[$userId]))
	{
		return $cache[$userId][$groupId];
	}

	$efficiency = 100;
	$expiredTasksCount = static::getExpiredTasksCountForNow($userId, $groupId);
	$inProgressTasksCount = static::getInProgressTasksCountForNow($userId, $groupId);

	if ($inProgressTasksCount > 0)
	{
		$efficiency = round(100 - ($expiredTasksCount / $inProgressTasksCount) * 100);
	}

	$cache[$userId][$groupId] = $efficiency;

	return $efficiency;
}