Versioned entity was modified before actions execution

1 Versioned entity Resto.Front.Api.V6.Data.Orders.Order was modified before actions execution. Expected version 0, actual version: ***

Причины:

  • Работа с приложения, подключенного к плагину не на главной кассе.

  • Главный терминал установлен в режим “Не синхронизировать”.

Отследить ошибку в логе плагина и проверить в этом же логе отсутствие предупреждения о том, что терминал не ГК:

1 WARN [ 1] - Current iikoFront terminal is not main. Run WaiterServer pligin on the main terminal only.

Решение: Установить WaiterServer только на главную кассу. Убедиться, что на ведомых терминалах нет плагина WaiterServer.

Приложение не подключается к кассе

Одна из причин: У кассы больше одного IP адреса.

Проверка: В логе плагина перечислены все поддерживаемые IP адресы кассы (“Terminal v4 IP addresses” - строка из лога). Подключиться вручную с приложения к кассе по каждому IP пока подключение не установится. Либо, в браузере устройства проверить каждый IP: http://[IP]:8105.

Решение: IP адрес, по которому удалось подключиться прописать в конфиге плагина: QR → Address.

Please clock in before using Waiter

Причина: Одинаковый пин-код у нескольких сотрудников в разных RMS iikoChain.

Решение: Всем сотрудникам присвоить разные пин-коды. Например, по принципу N****, где N - число уникальное для каждого отдельного RMS.

RestaurantSectionItemExtensions

System.ArgumentNullException Resto.Front.Api.V6.Extensions.RestaurantSectionItemExtensions.<>c.<ImageElementsToApiImageElements>b__1_0(IRestaurantSectionImage item).

Причина: В настройках ресторана используются схемы залов. Одна из схем залов не имеет столов. (Баг iikoFront).

Решение: удалить схему залов без столов. iiko 7.6.7003.0. Если не помогло, то в любом случае что-то со схемой зала. Ошибка возникает на стороне iikoFront.

Как вариант попробуйте следующее:

  1. В списке схем залов скопируйте текущую схему. Она добавится в список как неактивная.

  2. Удалите текущую активную схему зала

  3. Перегрузите фронт и проверьте стартанул ли плагин

System.InvalidOperationException: Section for table *** not found.

1 System.InvalidOperationException: Section for table (Id = GUID, Number = ...) not found.

Причина: ошибка в api v7, где-то в настройках отделений используется удаленный стол или отделение

Решение:

  1. Обновить Front до 8.0.6 и выше.

  2. Выполнить скрипт на базе РМС для поиска удаленного объекта, затем исправьте настройки отделений

1 2 3 4 5 SELECT [Id] ,[Type] ,[Xml] FROM [Entities] where xml like '%GUID%'

Недоступны размеры для блюд со схемой модификаторов

Для блюд со схемой модификаторов на экране выбора модификаторов не отображается группа с размерами блюда. Воспроизводится на версиях iiko 7.7.7, 7.9.1.

Причина: не установлена.

WA: Попробуйте в карточке блюда для разных размеров выставить разные коэффициенты. Не забываем обновить кэш меню плагина (WaiterServer: Обновить меню).

Не приходят push-уведомления о готовности блюд

Проверка: В браузере iikoWaiter.ru не открывается через https.
Причина: Старая необновлённая Windows 7, у которой 30.09.2021 истёк корневой сертификат "DST root ca x3".

Решение: windows 7 dst root ca x3

Другие способы решения проблем: https://arbus.atlassian.net/wiki/spaces/IIKOWAITER/pages/2457681#%D0%A0%D0%B5%D1%88%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BF%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC

Не происходит чекин по штрихкоду

Важно: именно штрихкод, а не QR
За сканирование и распознавание различных кодов отвечает сторонняя библиотека. Проблема на текущий момент затрагивает только коды формата Code-128 (т.е. этот формат не поддерживается iikoWaiter), см также https://arbus.atlassian.net/wiki/spaces/IIKOWAITER/pages/1802241
С нашей стороны мы обратились за помощью к разработчикам этой библиотеки.

Временных вариантов решения пока несколько:

  1. Добавить к отображаемому коду пробел. Получим: "79281145225 " (в конце один пробел). В таком виде код считывается успешно.

  2. Некоторые системы лояльности позволяют изменить формат кода. Например, заменить Code-128 на QR code.

  3. Отсканировать штрихкод другим приложением (любым сканером штрихкодов) и ввести значение вручную.

PaymentActionFailedException: The order was not paid. Cannot perform remote payment

Причина: Если режим обслуживания ресторан и в отделениях выставлена сервисная печать до/после оплаты происходит проблема оплаты заказа через апи фронта.
Решение: В настройках отделения, на котором не закрывается заказ, нужно выставить параметр “автоматическая сервисная печать - отключена”. Проблема исправлена в 8.0.6

Другие проблемы

  • Resto.Front.Api.Exceptions.PaymentActionFailedException: There are payment items in the order. Проблема встречается на iiko 7.2.*. Решается обновлением iiko.

  • Отображаются удалённые столы. Проблема с багом в iikoFront API V6 в iiko 7.3.*. Решается обновлением iiko.