Я начальник – ты дурак

В MyChat есть такая классная штука, как общая панель контактов. Древовидный список с любой степенью вложенности, по подразделениям компании, который формируется автоматически, для всех пользователей чата.

Всё вроде хорошо, но вот незадача – нужно в общем списке как-то выделять руководителей подразделений. Окей, мы эту проблему решили, создав на сервере специальный раздел, который так и назвали “Должности компании“.

Нужно заполнить список необходимых должностей и затем отметить некоторые как “Это руководитель подразделения“. Должности расставляются по старшинству, их можно двигать вверх-вниз и затем назначать пользователям, которые зарегистрированы на сервере. Делать это может только администратор сервера.

Выглядит это всё примерно вот так: Руководители подразделений компании в мессенджере MyChat

После этих нехитрых манипуляций все руководители подразделений (мы их между собой называем “тим-лидеры” (team leaders)) начинают отображаться во всех списках светло-голубым цветом. Вроде как бы и выделяются заметно, легко найти руководителей, не заходя в просмотр профиля пользователя.

Всё было хорошо, пока к нам не обратился человек, который использует наш продукт.

Суть просьбы такова: в компании есть ряд высокопоставленных сотрудников, которых не устраивает то, что их фамилии в общем списке находятся ниже других. Дескать я же начальник – почему моя фамилия находится с списке контактов после секретаря. И смех и грех.

Но выход всё же найден, причём достаточно элегантный. Я люблю SQL 🙂 Всё решилось несколькими дополнительными условиями в запросе к серверной базе данных.

Поскольку у нас в должностях компании есть очерёдность, то есть видно, кто “главнее “, можно, при необходимости, “подружить” выборку древовидного списка контактов и список должностей. Итого, если вы поставите в настройках сервера, в разделе “Должности компании” галку на опции “Размещать более высокие должности сверху в списках контактов (без сортировки)“, то MyChat клиент будет отображать список контактов следующим образом:

сначала располагаются все сотрудники, у которых в профиле прописана должность, сортируясь по старшинству. Выше будет тот, у кого должность больше. А затем уже все остальные сотрудники, у которых должности одинаковые или не прописаны вовсе, по алфавиту. Вот так это выглядит в панели контактов у клиента:
Панель контактов MyChat Client

И овцы целы, и волки сыты.

Обновление будет выложено на сайт сегодня.

2 thoughts on “Я начальник – ты дурак

  1. Интересно, а можно у вас брать посты с RSS? Ссылку на источник обязательно поставлю.

Leave a Reply

Your email address will not be published. Required fields are marked *