Оплата АЗС (FuelPay) — приложение для ОС Аврора
Сервис оплаты топлива на автозаправочной станции. Пользователь выбирает колонку, вид топлива и объём в литрах или сумму в рублях. Приложение формирует платёжный QR-код, который можно отсканировать в приложении любого банка (Сбербанк, Т-Банк, ВТБ, Альфа-Банк и др.). Банк сразу показывает получателя, его реквизиты, сумму и назначение платежа.
Возможности
- 4 топливораздаточные колонки, на каждой доступны все виды топлива.
- Топливо: АИ-92, АИ-95, АИ-98, ДТ с фиксированными ценами.
- Ограниченный запас топлива в резервуарах: после оплаты остаток уменьшается. Если топливо заканчивается, его нельзя выбрать.
- Заказ в литрах или в рублях с быстрыми кнопками (10/20/30/40 л, 500–2000 ₽) и кнопкой «Максимум».
- Проверки: минимум 1 л, максимум 200 л за заказ, не больше остатка в резервуаре.
- Платёжный QR-код по ГОСТ Р 56042-2014 (формат
ST00012, UTF-8). - История заказов (оплаченные и отменённые).
- Редактор реквизитов получателя с проверкой контрольных разрядов счёта (по БИК) и ИНН.
- Обложка приложения (cover) с остатками топлива.
- Все данные хранятся локально на устройстве, сервер не нужен.
Пример данных в QR-коде
ST00012|Name=ООО "ДЕМО-ОЙЛ"|PersonalAcc=40702810200000012345|BankName=ПАО Сбербанк|
BIC=044525225|CorrespAcc=30101810400000000225|PayeeINN=7701234560|KPP=770101001|
Sum=125460|Purpose=Оплата топлива АИ-95, 20,50 л, колонка №3, АЗС №7 «Демо-Ойл», заказ №000001. Без НДС
Сумма (Sum) указывается в копейках.
По умолчанию заданы учебные реквизиты (несуществующая организация). Чтобы провести реальный платёж, укажите свои реквизиты: главный экран → потяните вниз → «Реквизиты получателя».
Структура проекта
ru.azs.FuelPay.pro — проект qmake
ru.azs.FuelPay.desktop — ярлык приложения
rpm/ru.azs.FuelPay.spec — описание RPM-пакета
src/main.cpp — точка входа
src/storage.{h,cpp} — хранилище данных (QSettings)
qml/FuelPay.qml — окно приложения
qml/components/Station.qml — состояние АЗС: остатки, заказы, реквизиты
qml/components/QrCodeView.qml — отрисовка QR-кода
qml/js/qrcode.js — генератор QR-кода (ISO/IEC 18004), без сторонних библиотек
qml/js/logic.js — цены, расчёты, формирование платёжной строки
qml/pages/ — экраны приложения
icons/ — иконки 86, 108, 128, 172 px
Сборка
Требуется Аврора SDK 5.x.
- Откройте
ru.azs.FuelPay.proв Aurora IDE. - Выберите комплект AuroraOS-…-x86_64 (для эмулятора) или armv7hl/aarch64 (для устройства).
- Нажмите «Запустить» (зелёный треугольник). Приложение будет собрано в RPM, установлено в эмулятор и запущено.
Сборка из командной строки:
sfdk config target=AuroraOS-5.2.1.200-MB2-x86_64
sfdk build
Готовый пакет появится в каталоге RPMS/.
Лицензия
BSD-3-Clause