Перейти к основному контенту

Структура

Общие сведения

Ссылка на страницу на сайте: https://stankin.ru/about/structure.

Внешний вид страницы:

image-1786612803417.png

Реализация

Структура загружается каждые сутки через комбинацию агента Битрикс на стороне сайта stankin.ru (принимающая сторона) и REST-метода на стороне corp.stankin.ru (отдающая сторона).

Компонент Комментарии
Агент загрузки данных
  • Настраивается на стороне сайта. В разделе агенты настроен с опцией "Функция агента":
    CronStructureService::fetchStructureFromCorp();
  • Загрузка производится раз в сутки каждый день.
  • Просмотр журнала по ссылке (в строке поиска должна быть вбита фраза: "Загрузка структуры с корпортала" и выбран пункт выпадающего списка "Событие").
  • Реализация в директории: local/agents/CronStructureService.
  • Особенности настройки агента: был добавлен local/php_interface/init.php с директивной включения файла автозагрузки local/php_interface/s1/autoload.php.
REST-метод
  • Отрабатывает на стороне корпортала.
  • REST-метод является собственной разработкой. Реализация в директории: local/rest/structure.
  • Техническая особенность: при получении данных через REST-метод необходимо передавать SEF-путь, указанный в компоненте, иначе ссылки на карточки руководителей не будут работать.
Компоненты Битрикс
  • Используются для отображения информации на сайте.
  • Реализация через комплексный компонент:
    • Родительский компонент: local/components/stankin/structure
    • Дерево подразделений: local/components/stankin/departments
    • Карточка пользователя: local/components/stankin/employee
  • Два режима работы компонента: данные берутся из БД Битрикс или из JSON-файла. Режим отображения данных из БД задумывался для сценария, при котором у сайта своя актуальная копия данных о подразделениях и сотрудниках, получаемая из шины. Вместо этого была реализована архитектура отображения данных на основании JSON-файла, загружаемого из корпортала, который выступает таким образом в роли источника данных.

Ручная синхронизация

При внесении изменений в корпортале можно запустить синхронизацию в ручном режиме в административной панели сайта.

Для запуска синхронизации необходимо нажать зеленую кнопку "Выполнить". Синхронизация выполняется мгновенно.

В случае, если PHP-строка пустая, необходимо вставить следующий код и нажать кнопку "Выполнить":

//title: Загрузка структуры с корпортала
include_once '/home/bitrix/www/local/agents/CronStructureService/CronStructureService.php';
CronStructureService::fetchStructureFromCorp();

Редактирование карточек руководителей

Информация может быть отредактирована через карточку профиля или через административную панель корпортала. Здесь рассматривается вариант редактирования через карточку профиля пользователя.

Данные, выгружаемые автоматически

  • ФИО
  • Электронная почта
  • Подразделения
  • Должности

Данные для ручного заполнения

Поиск пользователя

В верхней панели нажать на кнопку поиска (значок лупы):

image-1786611975106.png

Откроется строка поиска:

image-1786612015073.png

Необходимо вбить имя сотрудника и перейти в карточку его профиля.

Перечень полей

  • Контактные данные
    • Телефоны (поля "Рабочий", "Внутренний телефон", "Внутр. телефон")
    • Адрес
  • Фото
  • Биография
  • Научная деятельность
  • Общественная деятельность
  • Образование
  • Награды

Обновление телефонов на корп. портале

Файл "Телефонный справочник.xlsx"

Актуальный файл со всеми телефонами лежит на диске битрикса - https://corp.stankin.ru/bitrix/tools/disk/focus.php?objectId=205726&cmd=show&action=showObjectInGrid&ncc=1

Также найти файл можно просто поиском в диске:

image-1791986577067.png

Чтобы изменить его содержимое необходимо его скачать, внести изменения, а затем загрузить его заново с заменой файла!!! (Чтобы id файла не изменился)

image-1791986429609.png

image-1791986465373.png

Если все хорошо, то должно быть следующее:

image-1791986485122.png

Далее жмем "Закрыть".

Изменения в файле "Телефонный справочник.xlsx"

Номера телефонов необходимо приводить к нужному формату. Для рабочих: "+7 (499) ХХХ-ХХ-ХХ", для внутренних: "Х-ХХ". Если у сотрудника несколько рабочих телефонов (максимум 3 штуки) или внутренних, то необходимо их писать в одной ячейке через разделитель ", " (запятая и пробел). Например:

image-1791987165847.png

Если какого-то телефона нет у сотрудника, то ячейку оставить пустой.

Обязательно у сотрудников необходимо заполнять столбцы "Сотрудник" и "Подразделение", так как это составной ключ для скрипта при поиске сотрудника в корп. портале. Иначе изменения не вступят в силу!

Обновление телефонов на корп портале:

1) После загрузки файла, необходимо запустить скрипт синхронизации телефонов по ссылке (необходимо просто дождаться загрузки страницы. Сама страница - просто белый фон):
https://corp.stankin.ru/local/agents/CronPhonebookService/CronPhonebookService.php

2) Удостовериться, что скрипт сработал. Для этого проверить необходимые карточки сотрудников в битриксе (на примере ректора):

image-1791986987498.png