Evo Jet Services

2014
Laptop
Evo Jet Services

Technologies

Drupal
Titanium
MySQL

EVO Jet Services — компания авиационной поддержки рейсов, зарегистрированная в Гонконге. Предоставляет услуги по закупке топлива, наземному обслуживанию и поддержке полётов для корпоративных операторов из списка Fortune 500, грузовых авиакомпаний и государственных воздушных судов в 2500+ точках по всему миру.

Симплео построил для EVO две системы на одном общем бэкенде Drupal: клиентское мобильное приложение для цен на топливо и заказа заправки, и Flight Compass — внутренний инструмент, которым пользуется собственная операционная команда EVO для координации всего остального, что нужно рейсу частного борта на земле.

Цены на топливо и заказ заправки

Задача

Закупка авиационного топлива требует скорости и точности — цены меняются в зависимости от локации, доступности и условий контракта с поставщиком. Клиенты EVO нуждались в доступе к актуальным ценам на топливо и возможности оформлять заправку прямо с телефона, не прибегая к звонкам и переписке с операционной командой. Существующий рабочий процесс не справлялся с растущим объёмом запросов.

Что мы сделали

Симплео разработал мобильное приложение и поддерживающий его Drupal-бэкенд для EVO Jet Services. Приложение создано на Appcelerator Titanium — единая кодовая база работает нативно на iOS и Android, что оптимально для сервиса, которым пользуются экипажи и операционные менеджеры на разных устройствах.

Приложение даёт авторизованным пользователям прямой доступ к ценам на топливо по локациям, возможность оформлять заявки на заправку и просматривать историю транзакций. Drupal-бэкенд управляет слоем данных, аутентификацией пользователей и административным интерфейсом для операционной команды EVO — управление локациями, контрактами и доступом к аккаунтам.

Интеграции

Платформа подключается к Fuelerlinx, FOS и PFM — основным агрегаторам цен на авиационное топливо в индустрии. Ценовые данные в приложении отражают реальные доступные тарифы. Симплео реализовал API-интеграции с каждым провайдером, включая аутентификацию, нормализацию данных из разных форматов ответов и нужную частоту обновлений для своевременных ценовых решений.

Flight Compass: операционная платформа для трип-саппорта

Задача

Координация одного международного рейса частного борта означает свой чек-лист для каждого этапа: разрешения на пролёт и посадку в каждой стране, визы для экипажа и пассажиров, заправка топливом, наземный транспорт, гостиницы для экипажа и пассажиров, таможенные декларации, инструктаж по конкретному аэропорту. У каждой из этих задач — свои документы, свой статус и свой дедлайн относительно вылета. Операционная команда EVO координировала всё это без системы, рассчитанной именно под такую структуру работы.

Что мы сделали

Flight Compass моделирует рейс так, как его на самом деле видит операционная команда EVO: Trip (изначально «Flight», переименовали после того, как команда пожила с системой) содержит один или несколько Leg (этапов), а каждый Leg несёт набор Task (задач) — по одной на категорию наземной поддержки, которая нужна этому этапу.

Типы задач — отдельный тип контента на каждую категорию работы:

  • Flight Plan — маршрут, загруженные документы fuel release, инструктаж по аэропорту
  • Permits (разрешения) — пролёт и посадка, по странам отдельно (например, для прилёта в Москву нужна отдельная задача «Russia Landing Permission», отличная от разрешения на пролёт Беларуси)
  • Visas — отдельно для экипажа (выбор из профилей экипажа выпадающим списком) и пассажиров (свободный ввод паспортных данных), с номером паспорта, гражданством, датами выдачи и истечения
  • Fuel — агент заправки (into-plane agent), расчётный объём заправки, локация — связано с той же системой цен на топливо, которой пользуется клиентское приложение
  • Ground Transportation и Crew/PAX Hotels
  • Shipping Item to Aircraft — с загрузкой авианакладной и номером отслеживания
  • General Declaration — таможенные документы

Мы построили это как настоящую модель данных, а не набор полей поверх стандартных возможностей Drupal — структуру сущностей (Trip → Leg → Task, плюс таксономия локаций с характеристиками ВПП, часами работы, часовым поясом и страновыми заметками — например, по безопасности дорожного движения) согласовали с командой EVO через общую диаграмму сущностей ещё до того, как была написана первая строка кода.

Отдельная роль Flight Compass Operator даёт операционному персоналу EVO доступ на уровне задач без доступа к остальному административному интерфейсу сайта, а этапы отображаются по кодам аэропортов и названиям городов, которыми реально пользуется операционная команда — «DEP: LKPR (Prague) ARR: UUEE (Moscow)» — а не по внутренним ID.

Расширение API по налогам на топливо

Одному из партнёров EVO по ценообразованию потребовались котировки на топливо с разбивкой по налоговым составляющим, а не единой суммой — НДС, до пяти именованных локальных налогов и базовая цена, отдельно для типов рейсов (частный/коммерческий, международный/внутренний). Вместо изменения API, от которого уже зависели все остальные интеграции, мы выпустили параллельный endpoint (request_fuel_price_taxes.json рядом с существующим request_fuel_price.json), возвращающий те же ценовые уровни по поставщикам с добавленной разбивкой по налогам — так единственный партнёр, которому это было нужно, получил решение без риска для остальных интеграций.

Результат

Проект потребовал плотной координации между мобильным фронтендом, API-слоем Drupal и внешними провайдерами данных — QA охватывало как функциональную корректность, так и надёжность интеграций, ведь сбой при оформлении заправки имеет реальные операционные последствия для экипажа, работающего по жёсткому расписанию.

Flight Compass превратил чек-лист, который раньше жил в переписке по почте и таблицах, в систему, где у каждой задачи на каждом этапе рейса есть владелец, статус и понятное место. Система работает на том же бэкенде Drupal, что и клиентская платформа EVO по ценам на топливо — данные о ценах и локациях используются общие, а не дублируются в двух системах.