Пользователи и роли
Назначение
Раздел отвечает за работу со списком сотрудников организации и их правами доступа: кто может войти в систему, в какой роли, к какому цеху он закреплён, какие действия ему разрешены. Здесь администратор заводит новых сотрудников, обновляет их данные, сбрасывает пароли при необходимости и закрывает доступ при увольнении.
Кто работает с модулем
- Администратор организации. Полный доступ к разделу: создаёт и редактирует любых сотрудников, назначает им роли, привязывает к цехам, сбрасывает пароли, закрывает учётные записи. Видит блок согласий на обработку персональных данных.
- Мастер. Видит раздел «Пользователи», но работает только с операторами — может заводить, редактировать, дублировать и закрывать только их. Действия над администраторами и другими мастерами для него закрыты, как и редактирование собственной роли.
- Оператор. Раздел «Пользователи» оператору недоступен. Свой профиль он видит, но в ограниченной форме (см. модуль 15 «Приложение OCULUS — оператор»).
Роли
В клиентской части OCULUS три роли:
| Роль | Где работает | Что делает |
|---|---|---|
| Администратор | Веб-интерфейс | Управление сотрудниками, цехами, справочниками, расчётами зарплаты, отчётами. Полный доступ к настройкам организации. |
| Мастер | Веб-интерфейс | Управление операторами, заданиями, сменами, простоями. Аналитика производства. Сброс пароля операторам. |
| Оператор | Приложение OCULUS | Получение и выполнение заданий, фиксация выработки, отчёт о простоях. В веб-интерфейс вход для оператора закрыт. |
Локализация ролей в интерфейсе: «Оператор», «Мастер», «Администратор» — пользователь видит роль на русском языке в таблице, в фильтрах и в собственном профиле.
Основные сценарии
Создание сотрудника
- Администратор открывает раздел «Пользователи» и нажимает «Добавить пользователя».
- В форме заполняет поля: логин, пароль, роль, ФИО, цех. Логин и пароль обязательны.
- Администратор может выбрать любую роль из доступных. Если форму открыл мастер — выбор сужается до «Оператор» (другие роли в выпадающем списке отсутствуют).
- После сохранения сотрудник появляется в списке и может войти в систему с указанным логином и паролем.
Редактирование сотрудника
- Из строки таблицы открывается карточка с теми же полями. Логин менять нельзя — это защита от потери истории действий: задания, смены, простои, сделанные сотрудником, остаются связанными именно с его логином.
- Можно изменить: ФИО, роль, цех, активность, должность, грейд, шаблон расчёта зарплаты.
- Пароль через карточку редактирования не меняется — для этого есть отдельное действие «Сбросить пароль».
Сброс пароля сотруднику
- Администратор или мастер выбирает сотрудника и нажимает «Сбросить пароль».
- Вводит новый пароль с теми же требованиями сложности, что и при самостоятельной смене (минимум 8 символов, минимум одна буква, одна цифра, один спецсимвол).
- Сообщает новый пароль сотруднику любым удобным защищённым способом (лично, телефонным звонком, через защищённый мессенджер).
- После сброса все активные сессии сотрудника автоматически аннулируются — даже если он остался залогинен на другом устройстве, при следующем действии система потребует от него пройти вход с новым паролем.
Деактивация сотрудника
- Используется, когда сотрудник в отпуске, на длительном больничном или временно не работает в системе. Учётная запись остаётся в системе со всеми историческими данными, но войти под ней нельзя.
- Деактивированный сотрудник скрывается из рабочих списков по умолчанию — фильтр «Активен» включён.
- Возврат в строй — одним переключателем.
Удаление сотрудника
- Используется при увольнении.
- Сотрудник скрывается из всех рабочих списков, но история его заданий, смен и простоев сохраняется в отчётах за прошлые периоды — расчёты зарплаты и аналитика остаются достоверными.
- Восстановление удалённого сотрудника в клиентском интерфейсе недоступно. Если удалили по ошибке — нужно обратиться в службу поддержки OCULUS.
Дублирование сотрудника
- Действие в строке таблицы. Открывает форму создания, в которой ФИО, цех и роль уже заполнены значениями исходного сотрудника.
- Администратор вводит новый логин и пароль — остальные поля при необходимости меняет.
- Удобно при заведении группы похожих сотрудников (например, бригада операторов одного цеха с одинаковой должностью).
Поля и данные
Карточка сотрудника
| Поле | Обязательно | Правила |
|---|---|---|
| Логин | Да | От 1 до 50 символов. Уникален в пределах организации. После создания не изменяется. |
| Пароль | Да (при создании и при сбросе) | Минимум 8 символов, минимум одна буква, одна цифра, один спецсимвол. |
| Роль | Да | «Оператор», «Мастер» или «Администратор». Список ролей у мастера сужается до «Оператор». |
| ФИО | Нет | До 200 символов. Без ФИО сотрудник в списках виден по логину. |
| Цех | Нет | Любой существующий цех организации. Без цеха сотрудник остаётся «общеорганизационным». |
| Активность | По умолчанию «Активен» | Переключатель. Деактивированный не может войти в систему. |
| Должность | Нет | Из справочника должностей. Используется в расчётах зарплаты. |
| Грейд | Нет | Из справочника грейдов. Влияет на зарплатные коэффициенты. |
| Шаблон расчёта зарплаты | Нет | Привязка к одному из настроенных шаблонов. |
Свой профиль
| Поле | Можно менять самому | Правила |
|---|---|---|
| Логин | Нет | Только для просмотра. |
| ФИО | Да | До 200 символов. |
| Да | Стандартный формат вида имя@домен. Поле опциональное. | |
| Телефон | Да | Допускаются цифры, пробелы, плюс, скобки и тире, длина 7–24 символа. Поле опциональное. |
| Пароль | Да | Через отдельную форму с подтверждением старого пароля. |
Списки, фильтры, поиск
Таблица сотрудников включает колонки: порядковый номер, ФИО, логин, цех, роль, признак активности.
- Сортировка — по ФИО, логину, цеху, роли, активности; в обоих направлениях.
- Глобальный поиск — единое поле, ищет по всем видимым колонкам сразу.
- Фильтры по колонкам:
- ФИО и логин — текстовый поиск с поддержкой нескольких значений через запятую («Иванов, Петров»).
- Цех — множественный выбор из выпадающего списка существующих цехов.
- Роль — выпадающий список «Оператор / Мастер / Администратор».
- Активность — переключатель «только активные / только деактивированные / все».
- Пагинация — выбор количества записей на странице: 10, 25, 50 или 100. По умолчанию 25.
Действия в строке таблицы (зависят от роли просматривающего и от того, кого он смотрит):
- Редактировать.
- Дублировать.
- Сбросить пароль.
- Деактивировать или активировать.
- Удалить.
На строке текущего пользователя (себя) действия «Удалить» и «Деактивировать» отсутствуют — это защита от случайного отключения собственной учётной записи.
Автоматика и подсказки системы
- Список ролей в форме создания и редактирования автоматически сужается под текущего пользователя: мастер физически не видит варианта «Администратор» в выпадающем списке.
- Фильтр «Активен» по умолчанию включён — список не загромождается уволенными и временно отключёнными сотрудниками.
- При сбросе пароля все активные сессии сотрудника аннулируются — он не сможет продолжить работу со старыми данными ни в одной вкладке или устройстве.
- При попытке мастера изменить чужую роль выше своих прав или собственную роль — действие блокируется, появляется явное сообщение.
- При самостоятельной смене пароля система требует ввести старый — это защита, если кто-то получил доступ к компьютеру с открытой сессией.
- Индикатор надёжности пароля показывает уровень от слабого до очень крепкого, начисляя бонус за длину 12 символов и более.
- Раздел согласий на обработку персональных данных виден только администратору — мастера не имеют доступа к согласиям других сотрудников. Это упрощает выполнение требований приватности по 152-ФЗ.
Микро-фичи и детали интерфейса
- Роли в интерфейсе всегда показаны на русском языке: «Оператор», «Мастер», «Администратор» — оператор не сталкивается с английскими названиями ролей и не путается.
- Глобальный поиск ищет одновременно по ФИО, логину, цеху и роли — не нужно выбирать «по какому полю искать».
- Фильтр «Цех» поддерживает множественный выбор: можно посмотреть сотрудников нескольких цехов сразу, например, при сравнении смен.
- Мастер в списке видит только операторов и себя — администраторы и другие мастера для него скрыты, чтобы не создавать иллюзию доступа к их карточкам.
- Кнопка «Удалить» на строке самого пользователя физически отсутствует — нельзя случайно удалить себя ни одним кликом.
- Кнопка «Деактивировать» для своей записи также скрыта — это исключает «самоблокировку», после которой потребовалось бы обращаться в поддержку.
- Дублирование сотрудника заполняет ФИО, цех и роль значениями исходной карточки, а логин и пароль оставляет пустыми — экономит время при заведении бригады с одинаковой должностью.
- Сброс пароля админом подчиняется тем же требованиям сложности, что и самостоятельная смена — нет «лазейки» через временные простые пароли.
- Логин не редактируется после создания — это защита истории действий: все задания, смены, простои сохраняются связанными именно с этим логином, и фамильный отчёт за прошлый месяц не «сломается» от переименования.
- После сброса пароля все активные сессии сотрудника аннулируются автоматически — это закрывает риск, что злоумышленник, перехвативший сессию, продолжит работу с украденным доступом.
- Email и телефон — опциональные поля. Сотрудника можно завести только с логином, ФИО и паролем — это удобно для цеховых операторов без корпоративной почты.
- На частоту сбросов пароля одному сотруднику установлено разумное ограничение — оно защищает и от случайного многократного нажатия «Сбросить», и от попыток злоупотребления. При превышении система остановит сброс и сообщит, через какое время можно повторить.
- Удаление цеха не каскадирует на сотрудников: они остаются в системе с пустым полем «Цех» и ждут переназначения. Списки сотрудников не обнуляются молча.
- В индикаторе надёжности пароля учитывается не только выполнение обязательных правил, но и длина — пароль 12+ символов получает бонусный уровень.
- Дата и время последнего изменения пароля видны самому сотруднику в его профиле — он понимает, насколько свежий у него пароль.
Связи с другими модулями
- Аутентификация (01). Логин и пароль, заведённые здесь, используются на экране входа. Сброс пароля автоматически отзывает все активные сессии этого пользователя.
- Организации и структура (02). Сотрудник опционально привязывается к одному цеху. Эта привязка определяет, в каких отчётах и фильтрах он попадает в «свою группу».
- Задания (06). Сотрудник может быть автором задания и/или его исполнителем. После удаления сотрудника история заданий за ним сохраняется.
- Смены (07). Мастер открывает смену, операторы попадают в её состав. Закрытие смены формирует записи о выработке для каждого участника.
- Зарплата (11). Расчёт идёт на каждого сотрудника по его должности, грейду и шаблону расчёта.
- Аналитика производства (12). В отчётах данные группируются по сотрудникам, что позволяет видеть личный вклад и сравнивать показатели.
- Согласия на обработку персональных данных. Сотрудник управляет своими согласиями в собственном профиле — отзыв согласия фиксируется и виден администратору в карточке этого сотрудника.
Состояния и пограничные случаи
- Самоудаление. Заблокировано: кнопки «Удалить» и «Деактивировать» на строке самого пользователя нет, попытка через прямой запрос отклоняется с сообщением «Нельзя удалить самого себя».
- Изменение собственной роли мастером. Заблокировано: попытка снять с себя роль «Мастер» отклоняется с явным сообщением «Мастер не может изменять свою роль».
- Мастер пытается управлять администратором. Карточка администратора для мастера недоступна — действия редактирования, сброса пароля и удаления отсутствуют. При попытке открыть карточку напрямую — сообщение об отсутствии доступа.
- Дублирующийся логин. При создании сотрудника с уже занятым в организации логином система явно сообщает об уникальности и просит выбрать другое имя.
- Сотрудник без email. Допустимо. В отчётах и таблицах он виден по ФИО и логину, никаких блокировок.
- Удаление сотрудника с историей. Возможно, но удаление мягкое: сотрудник скрывается из рабочих списков, история заданий, смен и простоев за ним сохраняется в отчётах.
- Восстановление удалённого сотрудника. В клиентском интерфейсе недоступно — обращение в службу поддержки OCULUS. Это сделано осознанно: восстановление мягко удалённой учётной записи может непредсказуемо повлиять на отчёты и зарплату, и его лучше делать с участием специалиста.
- Превышение лимита сброса пароля. После 5 сбросов одному и тому же сотруднику в течение часа система остановит дальнейшие сбросы и предложит подождать. Это защита от перебора и от случайного «дребезга кнопки».
- Деактивация сотрудника во время открытой смены. Сотрудник остаётся в составе текущей смены до её закрытия. Войти в систему он уже не сможет, но в отчётах смены его имя останется.
- Удаление цеха с привязанными сотрудниками. Само удаление цеха блокируется, если в нём есть машины. Сотрудники с этим цехом сами по себе цех не блокируют — после очистки оборудования цех можно удалить, и сотрудники останутся в системе с пустым полем «Цех».
- Согласие отозвано сотрудником. Администратор видит соответствующий статус в карточке. Отзыв не блокирует работу сотрудника, но фиксируется для соответствия требованиям приватности.
Операторский интерфейс OCULUS
- В приложении OCULUS нет раздела «Пользователи» — управление сотрудниками доступно только в веб-интерфейсе.
- Свой профиль в OCULUS — только для просмотра. Видны: ФИО, организация, роль, версия приложения. Изменить email, телефон, пароль через приложение нельзя — для этого нужно открыть веб-интерфейс.
- Единственное активное действие на экране профиля — кнопка «Выйти». Это сознательное упрощение: цеховой оператор не должен случайно изменить свои контакты на смартфоне в перчатках.
- Карточки других сотрудников из приложения OCULUS недоступны — оператор не может посмотреть, кто и что делает в организации, кроме того, что относится к его собственным заданиям и сменам.
- Локализация ролей в приложении OCULUS такая же, как в веб-интерфейсе — оператор видит «Оператор», мастер видит «Мастер».