1.3 Авторизация в админке
Что нужно
Сотрудники франшизы должны иметь возможность войти в админку (бэк-офис) и работать в ней в соответствии со своей ролью. После входа система показывает только те разделы и данные, к которым сотрудник имеет доступ.
Кто входит
В систему входят сотрудники с одной из четырёх ролей:
- Франшиза (владелец бренда) — видит всё: все ЮЛ, все торговые точки, весь каталог, все отчёты
- Франчайзи (партнёр) — видит только свои ЮЛ и торговые точки
- Менеджер ТТ — видит только свою торговую точку
- Кассир — в админку не входит (работает через POS-терминал)
Роль задаётся при создании сотрудника и определяет что он видит и что может делать после входа.
Способ входа
Сотрудник открывает страницу логина, вводит email и пароль, нажимает “Войти”.
- Email — тот, что указан в профиле сотрудника
- Пароль — задаётся при создании сотрудника (или при первом входе)
Что происходит после входа
- Система определяет роль сотрудника
- Показывает главную страницу (Dashboard)
- В боковом меню — только те разделы, к которым у роли есть доступ
- Данные на всех страницах автоматически фильтруются по роли (франчайзи видит только свои ТТ и т.д.)
Сессия
- После успешного входа сотрудник остаётся залогиненным надолго (не менее 30 дней)
- Закрытие браузера не завершает сессию — при следующем открытии сотрудник уже залогинен
- Сессия обновляется автоматически и незаметно для пользователя
- Если сессия всё-таки истекла — сотрудника перекидывает на страницу логина
Выход
- Кнопка “Выйти” в правом верхнем углу (в шапке)
- При нажатии: сессия завершается, пользователь попадает на страницу логина
- После выхода автоматический вход невозможен — нужно ввести логин/пароль заново
Восстановление пароля
Если сотрудник забыл пароль:
- На странице логина есть ссылка “Забыли пароль?”
- Открывается форма: ввод email
- На email приходит письмо со ссылкой для сброса пароля
- Сотрудник переходит по ссылке — открывается форма “Новый пароль”
- Вводит новый пароль дважды — готово, можно входить
Ссылка для сброса действует ограниченное время (например, 1 час). После использования — перестаёт работать.
Безопасность
Неверный пароль
- При неверном email или пароле — сообщение “Неверный email или пароль” (без уточнения что именно неверно)
- После 5 неудачных попыток подряд — аккаунт блокируется на 15 минут
- Показывается сообщение: “Слишком много попыток. Попробуйте через 15 минут.”
Деактивированный сотрудник
- Если сотрудник деактивирован (уволен) — войти невозможно
- Сообщение: “Учётная запись деактивирована. Обратитесь к администратору.”
Приостановленное ЮЛ
- Если ЮЛ сотрудника приостановлено — войти можно, но с предупреждением что ТТ не работают
- Сотрудник может просматривать данные, но не совершать операции на приостановленных ТТ
Что НЕ входит в эту задачу
- PIN-авторизация кассиров — это POS-терминал, отдельная задача
- Авторизация клиентов (покупателей) — SMS, Telegram, Flash-call — для сайта/приложения, не для админки
- Двухфакторная аутентификация — не в MVP
- Управление паролями (смена пароля в настройках) — отдельная задача
- Регистрация — сотрудников создаёт франшиза/франчайзи, самостоятельной регистрации нет