Спецификация 00. Обзор системы: контекст и контейнеры¶
Статус: ревизия №2 по итогам аудита корпуса · 10.10.2026. Числовые факты сопровождаются ссылками; канонические перечисления — в «Модели данных», §0.
Техническая спецификация платформы с визуальными схемами (Mermaid). Серия: 00 обзор → 01 доменная модель → 02 процессы → 03 контракты API → 04 деплой и офлайн. База:
../components/12-data-model.md.
1. Контекст системы (кто и что взаимодействует с платформой)¶
flowchart LR
subgraph Гости["Гости"]
G1["Гость в зале"]
G2["Гость онлайн (сайт/приложение)"]
end
subgraph Персонал["Персонал точки"]
W1["Кассир / официант"]
W2["Повар"]
W3["Курьер"]
W4["Управляющий точкой"]
end
subgraph Сеть["Сеть / УК"]
U1["Операционный директор УК"]
U2["Франчайзи"]
U3["Закупщик"]
end
LOVII[("Платформа lovii")]
subgraph Внешние["Внешние системы"]
AGG["Агрегаторы доставки"]
OFD["ОФД / ФНС"]
GOV["ЕГАИС / Честный ЗНАК / Меркурий"]
BANK["Банк: эквайринг, СБП"]
EDO["Оператор ЭДО"]
ROUTE["Сервис маршрутизации"]
SMS["СМС / мессенджеры"]
end
G1 -->|заказ у кассы| LOVII
G2 -->|онлайн-заказ| LOVII
W1 --> LOVII
W2 --> LOVII
W3 --> LOVII
W4 --> LOVII
U1 --> LOVII
U2 --> LOVII
U3 --> LOVII
AGG <-->|заказы, стоп-листы| LOVII
LOVII -->|фискальные документы| OFD
LOVII <-->|алкоголь, маркировка, ВСД| GOV
LOVII <-->|платежи| BANK
LOVII <-->|УПД, акты| EDO
LOVII -->|маршруты| ROUTE
LOVII -->|статусы, чеки, отзывы| SMS
2. Контейнерная схема (из чего состоит платформа)¶
flowchart TB
subgraph Фронт["Рабочие места (офлайн-первый)"]
POS["Кассовый терминал (веб-приложение + драйвер ККТ)"]
KDS["Кухонный экран (веб)"]
BOSS["Бэк-офис точки и УК (веб)"]
COURIER["Приложение курьера (мобильное)"]
GUEST["Витрина гостя: сайт, мини-апп, киоск"]
end
subgraph Ядро["Сервисы ядра (облако РФ)"]
API["API-шлюз (авторизация, тенанты, лимиты)"]
ORDERS["Сервис заказов и меню"]
INV["Сервис склада и производства"]
DELIV["Сервис доставки"]
GUESTCRM["Сервис гостей и лояльности"]
FRANCH["Сервис франшизы и аудитов"]
FIN["Финансовый сервис и роялти"]
BUS["Событийная шина"]
end
subgraph Данные["Данные"]
DB[("Основная БД: транзакции и справочники")]
LOG[("Журнал событий: остатки, аудит, вебхуки")]
VIT[("Витрины отчётов")]
end
POS --> API
KDS --> API
BOSS --> API
COURIER --> API
GUEST --> API
API --> ORDERS
API --> INV
API --> DELIV
API --> GUESTCRM
API --> FRANCH
API --> FIN
ORDERS --> BUS
INV --> BUS
DELIV --> BUS
GUESTCRM --> BUS
FRANCH --> BUS
FIN --> BUS
BUS --> DB
BUS --> LOG
LOG --> VIT
3. Назначение контейнеров¶
| Контейнер | Назначение | Офлайн |
|---|---|---|
| Кассовый терминал | заказы, оплаты, смены; драйверы ККТ | обязательный (буфер событий) |
| Кухонный экран | тикеты, тайминги, стоп-лист | обязательный (локальная очередь) |
| Бэк-офис | меню/ТТК, склад, персонал, финансы, аудиты | не требуется |
| Приложение курьера | назначения, маршруты, статусы, фото | устойчивость в «мёртвых зонах» |
| Витрина гостя | меню, корзина, оплата, статусы | не требуется |
| Сервисы ядра | бизнес-логика по доменам | — |
| Событийная шина | единый поток фактов; источник остатков и витрин | — |
4. Принципы (неизменяемые)¶
- Один контракт заказа для всех каналов (см. Спецификацию 03).
- Остаток склада = проекция журнала движений; остатков «вручную» не существует.
- Выручка для роялти — только из фискальных документов.
- Данные тенанта изолированы; агрегаты УК — только по точкам договора.
- Хранение ПДн в РФ (см. Разбор 4).