R50 21419d04c7961b4e6bf3e5b9fd8456c9
Высоконагруженные систем

PROIL

Добавлено 13 апр 2021 в 17:44
Задачи проекта

1. Автоматизация процесса работы мобильной АЗС
Прием заявок на заправку от пользователей
Прием заявок на заправку от B2B клиентов, в частности, каршерингов
Уведомление водителей о новых заказах
Уведомление клиентов о сделанной заправке и предоставление фактов, доказывающих, что заправка была произведена в заказанных объемах

2. Мониторинг бизнес процессов
Генерация отчетов для бухгалтерии
Создание личного кабинета для B2B клиентов с генерацией отчетов по обслуживанию их автопарков, а также мониторинга исполняемых заказов
Создание инструмента для мониторинга и контроля работы водителей мобильных АЗС
Контроль объемов заправляемого топлива в течение всей смены каждого водителя с погрешностью в 3л
Расчет времени доставки топлива

3. Быстрая оплата
Предоплата заправок с мобильного телефона, в частности с Apple Pay, для физических лиц


Разработка

1. Мобильное приложение для заказа топлива физическими лицами
• Добавления/редактирования своего личного автомобиля или автопарка
• Обозначение места расположения автомобиля для заправки
• Создание заказа (актуального или отложенного) и оплата с карты, apple pay
• Сохранение карты для оплаты в один клик
• Предварительное холдирование средств и списание полной суммы после заправки
• Просмотр истории заказов
• Трекинг доставки
• Push уведомления о смене статусов заказа

2. Кроссплатформенное мобильное приложение для водителей мобильных АЗС
• Просмотр заявок на карте и списком, поиск по номеру заявки
• Просмотр данных заявки
• Мониторинг расхода топлива в баке мобильной АЗС
• Операции по действиям с автомобилем (для каршерингов)
• Закрытие заявки с предоставлением данных по заправке (фото пистолета до/после заправки, приборной панели до/после заправки и количества заправленных литров)

3. Кабинет для мониторинга рабочего процесса
• Web интерфейс на React JS
• Мониторинг водителей
• Мониторинг заявок в различных статусах
• Формирование отчётов – фильтры по датам, статусам заказов, клиентам

4. Кабинет для B2B клиентов
• Web интерфейс на React JS
• Read only права доступа
• Таблица активных и завершённых заказов
• Формирование отчётов – фильтры по датам, статусам заказов
• Контроль баланса денежных остатков по счету клиента

5. Микросервис Proil
• Backend на стеке технологий Python3, Django, Celery
• API мобильного приложения для физических лиц
• Интеграция с API сервиса доставки

6. Микросервис доставки
• Backend на стеке технологий Python3, Django, Celery
• API мобильного приложения для водителей АЗС
• API для внешних партеров и сервиса Proil для создания, удаления, получения списка заявок
• Интеграция с API каршерингов и других B2B клиентов
• API для кабинета мониторинга рабочего процесса
• API для кабинета B2B клиентов

7. Микросервис Proil Route
• Backend на стеке технологий Python3, AioHTTP
• Расчет времени доставки посредством инструментов Distance Matrix API и их лимитирования, для экономии бюджета (эмуляция расчета без обращения в Google API)

8. Мониторинг
Мониторинг производительности и стабильности системы, а также разработка аналитических дашбордов при помощи Grafana, Prometheus

9. Автодеплой
• Автоматизации развёртывания и управления приложениями с помощью Docker
• Автодеплой всех микросервисов при помощи Gitlab CI



Результаты (2019)

• Реализовано более 10 млн. л. топлива.
• Обслужено более 330 000 автомобилей пользователей (B2B и B2C сегментов).
• Выручка компании Proil, за счет интеграции разработанных систем, составила 456 млн. руб.



43899b730e 46289fa09d 8becbfa5dc 059bd018de 3986055e2f 988a941438 F5a7011dc5