- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/internals/counter/event/garbagecollector.php
- Класс: BitrixTasksInternalsCounterEventGarbageCollector
- Вызов: GarbageCollector::readTasks
private function readTasks(int $userId, array $taskIds)
{
$sqlHelper = Application::getConnection()->getSqlHelper();
$viewedTime = $this->viewedTime;
$viewedTime = $sqlHelper->convertToDbDateTime($viewedTime);
$inserts = [];
foreach ($taskIds as $taskId)
{
$inserts[] = '(' . (int) $taskId . ', ' . $userId . ', ' . $viewedTime . ')';
}
$sql = "
INSERT INTO b_tasks_viewed (TASK_ID, USER_ID, VIEWED_DATE)
VALUES " . implode(',', $inserts) . "
ON DUPLICATE KEY UPDATE VIEWED_DATE = {$viewedTime}
";
Application::getConnection()->query($sql);
}