- Модуль: timeman
- Путь к файлу: ~/bitrix/modules/timeman/lib/helper/form/schedule/scheduleformhelper.php
- Класс: BitrixTimemanHelperFormScheduleScheduleFormHelper
- Вызов: ScheduleFormHelper::prepareResult
private function prepareResult($resultSchedulesMap, $schedulesForAllUsers = [])
{
$userIdsForName = [];
foreach ($resultSchedulesMap as $index => $schedules)
{
if (EntityCodesHelper::isUser($index))
{
$userIdsForName[EntityCodesHelper::getUserId($index)] = EntityCodesHelper::getUserId($index);
}
}
if (!empty($userIdsForName))
{
$names = $this->findUserNames($userIdsForName);
}
$result = [];
foreach ($resultSchedulesMap as $index => $schedules)
{
$result[$index] = [];
foreach ($schedules as $scheduleIndex => $schedule)
{
$result[$index][$scheduleIndex] = $schedule->collectRawValues();
}
}
foreach ($resultSchedulesMap as $index => $schedules)
{
foreach ($schedules as $scheduleIndex => $schedule)
{
$result[$index][$scheduleIndex] = array_merge(
$result[$index][$scheduleIndex],
[
'LINKS' => [
'DETAIL' => DependencyManager::getInstance()->getUrlManager()
->getUriTo(TimemanUrlManager::URI_SCHEDULE_UPDATE, ['SCHEDULE_ID' => $schedule->getId()]),
],
]
);
if (EntityCodesHelper::isUser($index) && !empty($names[EntityCodesHelper::getUserId($index)]))
{
$result[$index][$scheduleIndex]['entityName'] = $this->userHelper->getFormattedName(
$names[EntityCodesHelper::getUserId($index)]
);
$result[$index][$scheduleIndex]['entityGender'] = $names[EntityCodesHelper::getUserId($index)]['PERSONAL_GENDER'];
}
else
{
$result[$index][$scheduleIndex]['entityName'] = $this->getDepartmentName(EntityCodesHelper::getDepartmentId($index));
}
}
}
foreach ($resultSchedulesMap as $index => $schedules)
{
foreach ($schedules as $scheduleIndex => $schedule)
{
if (in_array((int)$schedule->getId(), $schedulesForAllUsers, true))
{
$result[$index][$scheduleIndex]['entityCode'] = EntityCodesHelper::getAllUsersCode();
}
}
}
return $result;
}