POS-система Quick Resto не предоставляет открытого API и имеет ограниченный доступ к внутренним данным.
Поэтому интеграция с Display24 реализуется на базовом уровне и основана на обмене CSV-файлами, экспортируемыми из интерфейса Quick Resto.
Интеграция позволяет автоматически обновлять меню-борды, цены и категории блюд без ручного ввода данных.
Quick Resto формирует CSV следующей структуры (пример):
Наименование;Артикул;Базовая цена, руб.;Остаток по всем складам, ед. изм.;ед.;
Средняя себестоимость по всем складам, руб.;Наценка, %;Скрыто на терминалах;
Количество заведений с блюдом в стоп-листе;Расположение
Теплые салаты;;;;пц;;;;;Теплые салаты
Салат с киноа и тыквой (создано QR);1;0.00;0;пц;0.00;0.00;Нет;0;Теплые салаты
"Говядина ""Веллингтон""" ;2;0.00;0;пц;0.00;0.00;Нет;0;
Гарниры;;;;пц;;;;;Гарниры
Макароны;3;10.00;0;пц;;0.00;Нет;0;Гарниры
Рис;4;12.00;0;пц;;0.00;Нет;0;Гарниры
Первые блюда;;;;пц;;;;;Первые блюда
Борщ;5;50.00;0;пц;;0.00;Нет;0;Первые блюда
Солянка;6;75.00;0;пц;;0.00;Нет;0;Первые блюда
Блюдо без группы;7;100.00;0;пц;;0.00;Нет;0;
Категории выводятся как отдельные строки, где заполнена только колонка «Наименование»
(пример: Тёплые салаты, Гарниры, Первые блюда).
Блюда идут ниже категории, а колонка «Расположение» дополнительно дублирует название категории.
В некоторых строках отсутствует категория (пустое значение «Расположение»).
Такие блюда должны попадать в категорию «Без категории».
Цена (Базовая цена, руб.) может быть равна 0.00 —
это может означать:
Значения могут содержать кавычки и специальные символы.
Файл может не содержать изображений блюд — их нужно добавлять вручную.
При импорте CSV система преобразует файл, используя следующие правила:
Категория определяется по столбцу:
Расположение, если заполненДля строк, где «Базовая цена» не пустая:
name ← Наименованиеprice ← Базовая цена, руб.weight ← не используется (Quick Resto не выгружает граммовку)group ← значение из столбца «Расположение» или ближайшая надстрочная категорияhidden ← значение «Скрыто на терминалах»article ← АртикулЕсли поле категории отсутствует:
group = "Без категории"
Строки, у которых пусто поле "Базовая цена", считаются категориями.
Исходная строка:
Борщ;5;50.00;0;пц;;0.00;Нет;0;Первые блюда
Преобразуется в Dataset:
{
"group": "Первые блюда",
"name": "Борщ",
"article": 5,
"price": 50.00,
"hidden": false
}
CSV → Dataset → Меню → HTML-шаблоны → Плейлисты → Дисплеи
Dataset автоматически формирует:
Это используется в:
HTML-шаблоны могут получать данные через {{mustache}}:
{{#items}}
<div class="item">
<span class="title">{{name}}</span>
<span class="price">{{price}} ₽</span>
</div>
{{/items}}
Шаблон автоматически обновляется при загрузке нового CSV.
Display24 автоматически обновляет данные:
Меню-борды обновляются мгновенно на всех устройствах через MQTT.
Интеграция Quick Resto построена через обмен CSV-файлом, но обеспечивает базовую автоматизацию:
Этого достаточно для стабильного ведения меню-бордов и автоматических обновлений контента в ресторанах.