# 3. Роли и права доступа ## 3.1 Состав ролей В системе должны быть предусмотрены следующие базовые роли: - клиент - менеджер - суперменеджер ## 3.2 Роль `Клиент` Клиент представляет организацию-контрагента и работает только в рамках данных своей компании. Клиент должен иметь возможность: - завершить регистрацию по приглашению - подать заявку на подключение - просматривать и редактировать собственные профильные данные в разрешенной части - подключать каналы уведомлений - работать с каталогом готовой продукции - добавлять товары в корзину - отправлять заявку на заказ - отправлять заявку на расчет - просматривать список своих заказов - просматривать карточку заказа - просматривать уведомления - просматривать бонусный баланс и историю операций - подавать заявку на вывод, если это разрешено правилами программы ## 3.3 Роль `Менеджер` Менеджер представляет сотрудника компании, закрепленного за клиентами. Менеджер должен иметь возможность: - рассматривать заявки на подключение - approve/reject регистрацию клиента - привязывать клиента к контрагенту - получать заявки на заказ - получать заявки на расчет - указывать стоимость - указывать параметры доставки - публиковать условия клиенту - переводить заявку в работу - отменять заявку - просматривать карточки клиентов - просматривать карточки заказов - работать с бонусными связями и заявками на вывод ## 3.4 Роль `Суперменеджер` Суперменеджер является расширенной административной ролью. Суперменеджер должен иметь все права менеджера, а также дополнительно: - доступ ко всем клиентам и всем заказам - управление настройками каталога - управление настройками уведомлений - управление настройками синхронизации - расширенный доступ к бонусному контуру ## 3.5 Матрица доступа | Действие | Клиент | Менеджер | Суперменеджер | | --- | --- | --- | --- | | Завершение регистрации | Да | Нет | Нет | | Подача заявки на подключение | Да | Нет | Нет | | Просмотр каталога | Да | Да | Да | | Добавление товара в корзину | Да | Нет | Нет | | Отправка заявки на заказ | Да | Нет | Нет | | Отправка заявки на расчет | Да | Нет | Нет | | Указание стоимости и доставки | Нет | Да | Да | | Публикация условий клиенту | Нет | Да | Да | | Перевод заявки в работу | Да | Да | Да | | Отмена заявки | Да | Да | Да | | Управление настройками каталога | Нет | Нет | Да | | Управление настройками уведомлений | Нет | Нет | Да | | Управление синхронизацией | Нет | Нет | Да | ## 3.6 Ограничения и безопасность доступа Система должна обеспечивать: - раздельные интерфейсы клиента и менеджера - доступ клиента только к собственному контрагенту и его объектам - ограничение административных функций по ролям - журналирование действий пользователя - возможность аудита изменения статусов и условий заявок