Роли и панели
Кто работает с платформой, что каждый видит и какой интерфейс для этого использует. Этот раздел отвечает на вопрос заказчика: «как будет выглядеть админка для всех, и суперадминка для владельца».
Четыре роли
Доступ устроен по принципу RBACRBACRole-Based Access Control — управление доступом на основе ролей. Права выдаются роли (Company Admin, Brand Admin, Restaurant Manager), а не каждому пользователю отдельно.: права привязаны к роли, а не к конкретному
человеку. Каждая роль видит строго свой срез данных — это обеспечивает изоляция
тенантовТенантЛогически изолированный клиент в multi-tenant системе. В Ghost Kitchen тенант — это бренд: его данные отделены от других по `brand_id` и правам доступа. по brand_id.
Что видит каждая роль
| Роль | Панель | Видит | Может |
|---|---|---|---|
| Company AdminCompany AdminВладелец платформы. Видит и управляет всеми брендами, ресторанами, заказами и сквозной аналитикой; создаёт новые бренды. | Суперадминка (Company) | Все бренды, рестораны, заказы, финансы, сквозная аналитика | Создавать бренды и кухни, управлять платформой, всеми пользователями и тарифами |
| Brand AdminBrand AdminАдминистратор одного бренда. Управляет своими ресторанами, меню и настройками, видит статистику только своего бренда. | Админка бренда | Свои рестораны, меню, заказы и статистику бренда | Управлять меню/ценами бренда, заводить кухни, приглашать менеджеров |
| Restaurant ManagerRestaurant ManagerМенеджер конкретной кухни. Работает с входящими заказами (KDS), локальным меню и настройками одной локации. | Панель кухни + KDSKDSKitchen Display System — экран на кухне, отображающий входящие заказы и их статусы вместо бумажных чеков. | Заказы и меню только своей кухни | Принимать/готовить заказы, менять статусы, ставить позиции в стоп-лист |
| Customer | Витрина (сайт/моб.) | Меню одного бренда, свою корзину и заказы | Заказывать, оплачивать, отслеживать статус |
Панели и приложения
:::tip Откуда берутся админки Базовую админку для управления данными даёт «из коробки» DirectusDirectusOpen-source headless-платформа поверх PostgreSQL: даёт модель данных, REST/GraphQL API, аутентификацию, RBAC и готовую админку без написания кода. (RBACRBACRole-Based Access Control — управление доступом на основе ролей. Права выдаются роли (Company Admin, Brand Admin, Restaurant Manager), а не каждому пользователю отдельно. и права на каждую таблицу). Поверх неё для удобных сценариев (дашборды, быстрый запуск бренда, KDS) делаются отдельные экраны на Nuxt/Vue. Разделение, какие сценарии остаются в Directus, а какие выносятся в кастомный UI, — тема раздела Фронтенд. :::
Иерархия владения
- Платформа владеет всеми брендами.
- Бренд владеет своими кухнями/ресторанами.
- Кухня владеет своими заказами и локальной версией меню.
- Клиент существует на уровне платформы — поэтому одного клиента можно узнавать во всех брендах (сквозная лояльность и аналитика), что невозможно на изолированных магазинах Shopify.