• Модуль: crmmobile
  • Путь к файлу: ~/bitrix/modules/crmmobile/lib/Kanban/ItemPreparer/Counters/ItemCounterEntityResponsible.php
  • Класс: BitrixCrmMobileKanbanItemPreparerCountersItemCounterEntityResponsible
  • Вызов: ItemCounterEntityResponsible::counters
public function counters(array $item, array $params, ?int $entityAssignedById): CountersResult
{
	$counters = [];

	$activityCounterTotal = ($item['activityCounterTotal'] ?? 0);
	$isCurrentUserAssigned = ((int)$params['userId'] === $entityAssignedById);

	$indicator = $this->getIndicator($activityCounterTotal, $item, $params['userId']);


	if (!$isCurrentUserAssigned)
	{
		$counters[] = $this->itemCounter->getEmptyCounter($activityCounterTotal);
		return new CountersResult($counters, $activityCounterTotal, $indicator);
	}

	$isReckonActivityLessItems = $params['isReckonActivityLessItems'];
	$activityError = (int)($item['activityError'] ?? 0);
	$activityIncomingTotal = (int)($item['activityIncomingTotal'] ?? 0);

	if ($activityError)
	{
		$counters[] = $this->itemCounter->getErrorCounter($activityError);
	}

	if ($activityIncomingTotal)
	{
		$counters[] = $this->itemCounter->getIncomingCounter($activityIncomingTotal);
	}

	if (empty($counters))
	{
		$counters[] = $isReckonActivityLessItems
			? $this->itemCounter->getErrorCounter(ItemCounters::DEFAULT_COUNT_WITH_RECKON_ACTIVITY)
			: $this->itemCounter->getEmptyCounter(0);
	}

	return new CountersResult($counters, $activityCounterTotal, $indicator);
}