1.3 Авторизация в админке

Что нужно

Сотрудники франшизы должны иметь возможность войти в админку (бэк-офис) и работать в ней в соответствии со своей ролью. После входа система показывает только те разделы и данные, к которым сотрудник имеет доступ.

Кто входит

В систему входят сотрудники с одной из четырёх ролей:

  • Франшиза (владелец бренда) — видит всё: все ЮЛ, все торговые точки, весь каталог, все отчёты
  • Франчайзи (партнёр) — видит только свои ЮЛ и торговые точки
  • Менеджер ТТ — видит только свою торговую точку
  • Кассир — в админку не входит (работает через POS-терминал)

Роль задаётся при создании сотрудника и определяет что он видит и что может делать после входа.

Способ входа

Сотрудник открывает страницу логина, вводит email и пароль, нажимает “Войти”.

  • Email — тот, что указан в профиле сотрудника
  • Пароль — задаётся при создании сотрудника (или при первом входе)

Что происходит после входа

  • Система определяет роль сотрудника
  • Показывает главную страницу (Dashboard)
  • В боковом меню — только те разделы, к которым у роли есть доступ
  • Данные на всех страницах автоматически фильтруются по роли (франчайзи видит только свои ТТ и т.д.)

Сессия

  • После успешного входа сотрудник остаётся залогиненным надолго (не менее 30 дней)
  • Закрытие браузера не завершает сессию — при следующем открытии сотрудник уже залогинен
  • Сессия обновляется автоматически и незаметно для пользователя
  • Если сессия всё-таки истекла — сотрудника перекидывает на страницу логина

Выход

  • Кнопка “Выйти” в правом верхнем углу (в шапке)
  • При нажатии: сессия завершается, пользователь попадает на страницу логина
  • После выхода автоматический вход невозможен — нужно ввести логин/пароль заново

Восстановление пароля

Если сотрудник забыл пароль:

  1. На странице логина есть ссылка “Забыли пароль?”
  2. Открывается форма: ввод email
  3. На email приходит письмо со ссылкой для сброса пароля
  4. Сотрудник переходит по ссылке — открывается форма “Новый пароль”
  5. Вводит новый пароль дважды — готово, можно входить

Ссылка для сброса действует ограниченное время (например, 1 час). После использования — перестаёт работать.

Безопасность

Неверный пароль

  • При неверном email или пароле — сообщение “Неверный email или пароль” (без уточнения что именно неверно)
  • После 5 неудачных попыток подряд — аккаунт блокируется на 15 минут
  • Показывается сообщение: “Слишком много попыток. Попробуйте через 15 минут.”

Деактивированный сотрудник

  • Если сотрудник деактивирован (уволен) — войти невозможно
  • Сообщение: “Учётная запись деактивирована. Обратитесь к администратору.”

Приостановленное ЮЛ

  • Если ЮЛ сотрудника приостановлено — войти можно, но с предупреждением что ТТ не работают
  • Сотрудник может просматривать данные, но не совершать операции на приостановленных ТТ

Что НЕ входит в эту задачу

  • PIN-авторизация кассиров — это POS-терминал, отдельная задача
  • Авторизация клиентов (покупателей) — SMS, Telegram, Flash-call — для сайта/приложения, не для админки
  • Двухфакторная аутентификация — не в MVP
  • Управление паролями (смена пароля в настройках) — отдельная задача
  • Регистрация — сотрудников создаёт франшиза/франчайзи, самостоятельной регистрации нет