Научная статья на тему 'Разработка модуля сканирования QR-кодов для веб-сервиса, автоматизирующего предприятие общественного питания'

Разработка модуля сканирования QR-кодов для веб-сервиса, автоматизирующего предприятие общественного питания Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1205
72
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВЕБ-СЕРВИС / ANDROID / АВТОМАТИЗАЦИЯ ПРОИЗВОДСТВА / СКАНЕР QR-КОДОВ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Горбань Андрей Андреевич, Дьяков Артем Евгеньевич, Коробейников Илья Вадимович, Лоч Никита Владимирович

Обсуждается разработанный Android-модуль сканирования QR-кодов для веб-сервиса, автоматизирующего предприятие общественного питания. При разработке системы были проанализированы и учтены современные требованиями, предъявляемыми к программным продуктам. Веб-сервис предназначен для создания единого интерфейса для проведения торговых операций, а также для установления дистанционного контроля за всеми торговыми точками, независимо от их местоположения. Веб-сервис базируется на современных технологиях и программных средствах, имеет дружественный интерфейс, позволяет сканировать QR-коды для опрощения работы кассира.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Горбань Андрей Андреевич, Дьяков Артем Евгеньевич, Коробейников Илья Вадимович, Лоч Никита Владимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Разработка модуля сканирования QR-кодов для веб-сервиса, автоматизирующего предприятие общественного питания»

РАЗРАБОТКА МОДУЛЯ СКАНИРОВАНИЯ QR-КОДОВ ДЛЯ ВЕБ-СЕРВИСА, АВТОМАТИЗИРУЮЩЕГО ПРЕДПРИЯТИЕ ОБЩЕСТВЕННОГО ПИТАНИЯ Горбань А.А.1, Дьяков А.Е.2, Коробейников И.В.3, Лоч Н.В.4

'Горбань Андрей Андреевич — студент;

2Дьяков Артем Евгеньевич — студент; 3Коробейников Илья Вадимович — студент, кафедра информатики и вычислительной техники;

4Лоч Никита Владимирович — студент, кафедра системного анализа и управления, Институт информатики и телекоммуникаций Сибирский государственный университет науки и технологий им. академикаМ.Ф. Решетнева,

г. Красноярск

Аннотация: обсуждается разработанный Android-модуль сканирования QR-кодов для веб-сервиса, автоматизирующего предприятие общественного питания. При разработке системы были проанализированы и учтены современные требованиями, предъявляемыми к программным продуктам. Веб-сервис предназначен для создания единого интерфейса для проведения торговых операций, а также для установления дистанционного контроля за всеми торговыми точками, независимо от их местоположения. Веб-сервис базируется на современных технологиях и программных средствах, имеет дружественный интерфейс, позволяет сканировать QR-коды для опрощения работы кассира.

Ключевые слова: веб-сервис, Android, автоматизация производства, сканер QR-кодов.

Развитие малого и среднего предпринимательства сопровождается возрастанием роли бухгалтерской информации в сферах управления, контроля и анализа предпринимательской деятельности, что особенно актуально для структур с большим количеством территориально распределенных торговых точек и отсутствием строгой системы контроля работников, процесса торговли, состояния складов и полученной выручки [1].

Создание единого интерфейса для проведения торговых операций позволит установить полный дистанционный контроль за всеми торговыми точками, независимо от их местоположения. Осуществление доступа к этому интерфейсу через веб-приложение повысит мобильность системы и избавит от необходимости прокладки излишних каналов связи и приобретения дополнительного оборудования, в том числе сканеров штрих-кодов. Разработка модуля сканирования QR-кодов с мобильного устройства повысит эффективность и удобство использования веб-сервиса [2].

Веб-сервис имеет достаточно быстрый и плавный интерфейс, построенный с помощью фреймворка (от англ. Framework - «Структура») адаптивной верстки JQuery Mobile [3]. Данный фреймворк позволяет элементам интерфейса подстраиваться под любой размер экрана пользователя, а также фреймворк адаптирован для работы на сенсорных экранах.

На главной странице продавца отображается меню той торговой точки, на которой он начинает рабочий день (Рис. 1). В верхней части окна располагаются четыре вкладки с различными категориями блюд: всё, основное, напитки, сладости. Также элемент меню может являться подкатегорией, тогда при нажатии на данный элемент - отобразится всплывающее окно, в котором будут отображены элементы данной подкатегории.

Рис. 1. Главная страница продавца

С целью избавления продавца от необходимости вручную искать заказанные элементы меню, было решено добавить модуль с распознаванием QR-кодов. С этой целью было разработано мобильное приложение под систему Android [].

Все товары в базе имеют свой уникальный номер (ID - идентификатор). Этот уникальный номер кодируется в QR-коде каждого продукта, помимо уникального номера можно поместить в код и другую полезную информацию, например, название товара и его цену, которые будет нести в себе справочную информацию.

Для организации взаимодействия Android-приложения с сайтом использовался специальный компонент, под названием WebView, в который можно загрузить разработанный веб-сервис в привычном виде. Более того, в Android реализована возможность обмена информацией между Android-кодом и JavaScript кодом, выполняемым в данный момент на загруженной странице [4].

В первую очередь, необходимо реализовать сам интерфейс в Android, доступ к которому необходим из JavaScript. В данном случае, интерфейс будет предоставлять возможность для запуска QR-сканера, а также возможность передать в JavaScript информацию о считанном товаре. Для того, чтобы Android метод был доступен в JavaScript, необходимо пометить его атрибутом @JavaScriptInterface и передать объект класса с этим методом в функцию addJavascriptInterface компонента WebView, указав имя интерфейса, например, слово «camera» [5]. @JavascriptInterface public void launchScanner() { if (isCameraAvailable()) {

Intent intent = new Intent(this, QrScannerActivity.class);

intent.putExtra(QrScannerConstants.SCAN_MODES, new int[] {Symbol.QRCODE}); startActivityForResult(intent, QR_SCANNER_REQUEST); } else {

Toast.makeText(this, "Rear Facing Camera Unavailable",

Toast.LENGTH_SHORT).show(); }

}

После этого, в JavaScript можно при клике по кнопке для вызова сканера QR-кодов, можно будет вызвать Android-функцию вызвав функцию в пространстве имен «camera» (которая была указана при регистрации интерфейса в Android-приложении»: camera.launchScanner();

После того, как Android-приложение прочитало QR-код и извлекло информацию о товаре, его цене и идентификаторе, необходимо передать его обратно на страничку в WebView. Для этого можно воспользоваться функцией loadUrl у компонента WebView, которая позволяет кроме загрузки страниц по их URL - выполнять любой фрагмент JavaScript [6-7]. С помощью извлеченного id товара из QR-кода, можно сымитировать клик по конкретному пункту меню, вызвав следующую функцию: mWebView.toadUrl(S1ring.format("javascript:menuCHck(nun, %s, true)", result, 500));

Таким образом, пользователю будет предоставлена возможность считывать QR-код товаров, блюд и продуктов и тут же передавать их на страничку веб-сервиса, который подсчитает сумму покупки, варианты сдачи и, при нажатии на соответствующую кнопку -отправит всю транзакцию на сервер.

Разработанная система сможет составить высокую конкуренцию такой программной системе как R-Keeper [8], так как стоимость внедрения данной систему по большему счету обуславливается ценой смартфона или планшета с доступом в сеть Интернет, в то время, как вышеуказанная система дорогостоящая и для внедрения требует большое количество различного оборудования и инфраструктуры, например, необходимы сенсорные терминалы для установки программного обеспечения, принтеры, сканеры штрих-кодов, а также прокладка проводного интернет-соединения, что в значительной мере снижает мобильность системы в целом.

Список литературы

1. Автоматизация торговли. [Электронный ресурс]. Режим доступа: http://www.delta-srv.ru/auto.htm/ (дата обращения: 18.03.2018).

2. Бугаев Л. Мобильный маркетинг. Как зарядить свой бизнес в мобильном мире [Текст]. М.: Альпина Паблишер, 2012. 214 с.

3. JqueryMobile. [Электронный ресурс]. Режим доступа: http://jquerymobile.com/ (дата обращения: 18.03.2018).

4. Роджерс Р., Зигурд М. Android. Разработка приложений [Текст]: учебный курс. М.: ЭКОМ, 2010. 230 с.

5. Фримен А. jQuery 2.0 для профессионалов [Текст]: Изд. «APress», 2016. 80 с.

6. Шилдт Г., Холмс Дж. Искусство программирования на Java [Текст]: учебный курс. М.: Вильямс, 2005. 336 с.

7. Роджерс Р., Зигурд М. Android. Разработка приложений [Текст]: учебный курс. М.: ЭКОМ, 2010. 230 с.

8. R-Keeper. [Электронный ресурс]. Режим доступа: http://www.r-keeper.ru/ (дата обращения: 18.03.2018).

i Надоели баннеры? Вы всегда можете отключить рекламу.