Задача [#9687]: Ограничение отображения дерева орг.структуры в модуле «Сотрудники» в зависимости от занимаемой должности

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

Решение: в разделе конфигуратора «Настройки системы» -> «Управление модулями» -> «Доп. настройки управления модулями» необходимо реализовать новую опцию «Ограничить просмотр дерева орг.структуры». Опция представляет собой флажок (по умолчанию --- выключен):

Рисунок 187. Опция «Ограничить просмотр дерева орг.структуры» в Конфигураторе

Опция «Ограничить просмотр дерева орг.структуры» в Конфигураторе

Примечание: подразделением 1 уровня будем называть то подразделение, которое является первым для данного пользователя вверх по его орг.структуре.

Если авторизованный пользователь - специалист на должности (не руководитель), то подразделение 1 уровня ему доступно полностью (включая все его дочерние подразделения и должности). Далее вверх по иерархии ему доступны только его руководители, включая их И.О. и заместителей, назначение которых распространяется на подразделение данного специалиста.

Если авторизованный пользователь - руководитель подразделения любого уровня иерархии, то подразделение, в котором он является руководителем, доступно ему полностью. Далее вверх по иерархии ему доступны только его руководители, включая их И.О. и заместителей, назначение которых распространяется на его подразделение. Руководителю на корневой ноде всегда доступно всё дерево орг.структуры, независимо от настроек.

Если авторизованный пользователь - И.О. руководителя подразделения, то ему доступно всё то дерево, что и руководителю (без учета его делегирований), исполняющим обязанности которого он является.

Если авторизованный пользователь - заместитель руководителя подразделения, то ему доступно всё то дерево, что и руководителю (без учета его делегирований), заместителем которого он является (при этом неважно, заместителем всех или конкретного подразделения он является).

Если авторизованный пользователь имеет дополнительный доступ на какое-либо подразделение либо является там сотрудником отдела кадров, то итоговое дерево орг.структуры должно являться результатом объединения («ИЛИ») нескольких деревьев, доступных согласно каждому из обоих вариантов дополнительного доступа.

Если авторизованный пользователь находится одновременно на нескольких должностях (например, специалист и И.О. руководителя, либо специалист в нескольких подразделениях и т.п.), то итоговое дерево орг.структуры должно являться результатом объединения («ИЛИ») нескольких деревьев, доступных согласно каждой его занимаемой должности.

Если авторизованный пользователь также обладает любым из делегированных прав на ежедневник и/или работы от одного или нескольких руководителей, то данному пользователю становится доступным всё то дерево, что и делегировавшим руководителям (без учета их собственных делегирований), т.е. итоговое дерево орг.структуры должно являться результатом объединения («ИЛИ») нескольких деревьев, доступных согласно делегированным правам.