Перейти к содержимому
N1
Legacy · Bitrix24 · Active Directory · карта офиса

Перенос самописного справочника в Bitrix24: карта офиса и синхронизация с AD

Клиент: Страховая компания, NDA Категория: Legacy Стек: PHP 8.4, Bitrix24 D7, HL-блоки, LDAP / Active Directory, Vue, AMI (Grandstream) Срок: внедрялось поэтапно
Проблема

Справочник сотрудников жил отдельным приложением на Node.js/Express: данные в JSON-файлах без базы, свой вход через AD, монолит на 2409 строк. Сотрудники и оргструктура в нём дублировали то, что уже есть в портале.

Ограничения

Фронтенд прежнего приложения в выгрузку не попал — экраны восстанавливались по API и данным. Персональные данные и фото из выгрузки нельзя класть в git, а портал должен остаться единственным источником истины по людям.

Что сделал
  • Сотрудники и подразделения перенесены в штатные сущности портала без параллельного реестра; импортёр сопоставляет людей по email и ФИО и отчитывается о несопоставленных
  • Интерактивная карта двух этажей: рабочие места, зоны, переговорные, поиск «кто где сидит», зум и редактор карты
  • Агент досинхронизации из Active Directory: внутренний номер, должность, мобильный и фото — без перетирания того, что задал HR
  • Статусы линий и звонок коллеге в один клик через АТС
  • Курсы валют Нацбанка РК с кешем и откатом на последнее известное значение при недоступности источника
Архитектура
Выгрузка Node-приложения → CLI-импортёр → Пользователи и оргструктура портала → HL-блоки карты офиса → Агент синхронизации с AD
Результат

Данные прежнего справочника — 91 сотрудник, 26 подразделений и 2 плана этажей — перенесены в штатные сущности портала; 73 рабочих места на карте сверены с прежним приложением, координаты совпали. Справочник, карта и досинк из AD работают на проде.

Что можно переиспользовать
Импортёр внешнего справочника в штатных пользователей Bitrix24 с отчётом о расхождениях Интерактивная карта офиса с редактором на HL-блоках Досинхронизация профилей из Active Directory