В Poster валюта аккаунта не привязана к реальной валюте или ее курсу. Острой потребности в этом нет, так как один аккаунт Poster всегда работает в рамках одной страны. Тут я не корректно записал демо и не посмотрел на валюту тестового аккаунта.
У реальных клиентов таких проблем не возникает.
Да, главное чтобы визуально все смотрелось органично и iFrame не казался инородным телом в продукте
Согласен, сейчас пробуем еще одним способом использовать iFrame:
Когда клиент заполняет создает новое блюдо, ему нужно заполнить ингредиенты этого блюда. Ингредиенты создаются на отдельной странице и если забыл их добавить заранее, приходится закрывать страницу создания блюда, возвращаться на страницу с ингредиентами, создавать новый, а потом обратно в форму блюда.
Решение простое, добавить на форме создания блюда возможность создать ингредиент. И чтобы не делать новых вьюх, валидаций и стилей, просто в попапе будем открывать форму создания ингредиента.
И так можно делать со всеми сущностями по проекту, которые зависят от других от друга.
да, имел ввиду на постсоветском пространстве
Спасибо, Александр!
1.
Саша, ты написал две цитаты: «открыто в браузере в нативном приложении» и «с локальной машины» вместе, хотя они взяты из разных частей статьи.
Давай я более подробно объясню, почему выбрали именно такой стек технологий, думаю это поможет разобраться.
Открыто в браузере в нативном приложении именно SPA. SPA это и есть ядро Poster. Выбрали веб приложение, потому что легче поддерживать одно приложение в вебе чем писать 3 нативных интерфейса для каждой платформы.
Нативная обертка нужна для общения с оборудованием, к сожалению, нельзя из браузера просканировать локальную сеть и найти Ethernet принтер.
Когда я говорил про локальную машину, я имел ввиду что bundle грузится с компьютера разработчика только в момент разработки плагина. У клиентов JS грузится с нашего сервера.
2.
Проверять код каждого разработчика это очень ресурсозатратно, и я не знаю линтера, который защитит от кода с багами. Если ты знаешь, подскажи, пожалуйста.
Конечно можно ограничивать людей и штрафовать за баги, но это не наш подход. Мы за то, чтобы дать разработчику как можно больше «безопасных» инструментов, а не за ограничения.
Насчет 5 интеграций, я еще не видел ни одного клиента, у которого бы стояло 5 интеграций на одной кассе.
Проблема с качеством сторонних интерфейсов уже есть, пока мы только в начале пути ее решения и формируем гайдлайны для разработчиков. А чтобы наш интерфейс не казался перегруженным плагинами, мы специально оптимизируем каждое место, где приложение может отображать свой интерфейс под большое кол-во интеграций.
3.
Задержка 5 секунд выделяется на каждое приложение и сформирована чисто эмпирическим путем. Опять же, возможно в статье это не достаточно детально описано, но при задержке в 5 секунд мы перезагружаем именно iFrame, а Poster продолжит свою работу как будто плагин не подключен, и пока приложение загружается, официант сможет спокойно закрыть заказ.
Что ты понимаешь под фразой «Вы же не по сети ходите. У вас же не может быть потери пакетов.»? Касса постоянно общается с сервером и при плохом интернете могут быть сбои и задержки.
4.
Фича по сравнению закупочных цен еще в разработке. Данные мы планируем брать анонимизированные по клиентам Poster, то есть это агрегированная неперсонализированная статистика.
Владельцу заведения в его админ панели будут отображаться данные по его региону и по похожему размеру заведения.
Ты прав, что нужно показывать владельцу бизнеса, что он переплачивает при закупках. И как проверять качество закупаемых ингредиентов — это один из челенджей, которые предстоит решить. Сейчас на этапе тегирования категорий, и определения, что два заведения похожи друг на друга.