Битрикс24. Эпизод "Скрытая Структура"

9 Апреля 2020

следующая статья
Виктор Магдин

Back End Teamlead

Виктор Магдин
Битрикс24. Эпизод "Скрытая Структура"

Для всех сотрудников Битрикс24 Структура компании является привычным явлением. Здесь видно иерархию отделов, их взаимосвязь и место каждого сотрудника в структуре. Места в схеме для пользователей портала определяет администратор, который также может в любой момент отредактировать структуру в соответствии с изменениями в компании. Из этого раздела Портала можно попасть на профиль любого человека, который здесь отображается.

структура авивив.png

Безусловно, это весьма удобный инструмент, особенно для большой компании или удаленной работы. В первом случае сотрудники не должны помнить, на каком этаже и в каком кабинете сидит нужный в данный момент человек — структура все покажет. Во втором люди могут быть и не знакомы между собой в жизни, но всегда оставаться на связи в нужное время. Однако уже несколько раз в компанию обращались заказчики с просьбой в той или иной мере ограничить возможности структури. Причины у каждого свои, но все связаны с особенностями бизнеса, а значит требуют индивидуального решения. Штатного функционала для решения подобных задач в Битрикс24 не предусмотрено. Поэтому единственный выход — кастомизация коробочной редакции Битрикс24. Давайте рассмотрим подобную ситуацию на конкретном примере. 

Скрываем структуру для отделов

Реальная задача предусматривала возможность пользоваться Структурой компании пользователям каждого конкретного отдела. Целостную картину могут видеть лишь пользователи с правами администраторов, а остальные могут довольствоваться лишь коллегами по отделу. 

завантаження.png

На первый взгляд все кажется предельно просто. Однако на практике возникают многие технические трудности, когда просто что-то выключить или вырезать в коде не получается. Ведь речь идет не только о пункте левого меню “Структура”: для выполнения подобных задач необходимо ограничивать функционал Битрикс24 по всей системе, а не только в одном месте. Ведь для достижения результата необходимо также предусмотреть ограничение области поиска, функции упоминания пользователя в тексте (при помощи знака “+”), диалоги и многое другое. Поэтому самостоятельно пользователям Битрикс24 сделать такое невозможно, а для качественного выполнения даже опытный программист должен учесть многие моменты. 

Места вывода данных пользователей

Наши разработчики составили список из двадцати мест в Портале, где задействован функционал Структуры компании. Если не учесть всех этих моментов, то ограничение окажется неполным и некоторая информация будет способна пробится в свет. И так, вот список: 

  1. Структура компании; 

  2. Поиск по сотрудникам;

  3. Посты в живой ленте;

  4. Фильтр в живой ленте;

  5. Упоминание сотрудника при создании поста;

  6. Дни рождения сотрудников;

  7. Пульс компании;

  8. Профиль сотрудника;

  9. Чаты;

  10. Фильтра в CRM;

  11. Пикеры в CRM-карточке; завантаження (2).png  

  12. Фильтр в календаре;

  13. Пикер при создании события в календаре (краткая форма);

  14. Пикер при создании события в календаре (полная форма);

  15. Фильтр в задачах;

  16. Создание/редактирование задачи;

  17. Пикеры при просмотре задачи;

  18. Workgroups & projects;

  19. Фильтр по проектам;

  20. Страница результатов поиска.

Что получаем в результате?

После внесения изменений в выборки пользователей по всем пунктам списка выше, мы получаем полностью ограниченный функционал для сотрудников отдельных отделов. Это работает не для конкретно-выбранных подразделений, а масштабируется на всю структуру компании. Основная сложность выполнения задачи состоит в достаточно большом объеме кода в ядре программы, который приходится обрабатывать. Поскольку речь идет именно о ядре, то в первую очередь возникает вопрос об обновлениях коробки и опасности. Однако специалистам нашей команды удалось найти необходимые подходы, чтобы обезопасить наше решение — обновления никак не повлияют на результат нашей работы. И для этого нам понадобилось всего 30 часов разработки. 

завантаження (1).png

Таким образом рядовые пользователи без админправ имеют возможность полной мерой коммуницировать и сотрудничать только с коллегами по отделу, в то время как остальная жизнь компании остается им неизвестной. Такая практика идеально подходит для компаний, которые, к примеру, возглавляют сотрудничество и координацию работы других компаний или команд, которые в определенных вопросах могут быть конкурентами между собой. 

Также стоит заметить, что мы разобрали конкретный пример технического задания, который касался отделов. Но для коробочного Битрикс24 возможно реализовать любые другие проекты с отличающимися параметрами, которые необходимо конкретно Вашему бизнесу. И наша компания с радостью поможет воплотить в жизнь именно Вашу идею!

Получайте больше вместе с Авиви!


Похожие статьи

Записаться на консультацию

Мы свяжемся с вами в течении 10 минут