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

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

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

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

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

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

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

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

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

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

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

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

2 Replies to “Я начальник — ты дурак”

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *