- Добавлена полная интеграция с Telegram Mini App (динамическая загрузка SDK) - Отдельный компактный дизайн для Telegram Mini App - Добавлен loader при инициализации (предотвращает мелькание SMS-авторизации) - Улучшена навигация: кнопки "Назад" и "К списку заявок" теперь сохраняют авторизацию - Telegram Mini App: кнопка "Выход" просто закрывает приложение - Telegram Mini App: заявки "В работе" скрыты из списка - Веб-версия: для заявок "В работе" добавлена кнопка "Просмотреть в Telegram" (ссылка на @klientprav_bot) - Telegram Mini App: кнопки действий в черновиках расположены вертикально - Веб-версия: убрано отображение номера телефона в приветствии - Исправлена проблема с возвратом к списку черновиков (не требует повторной SMS-авторизации) - Заблокировано удаление и редактирование заявок со статусом "В работе" - Добавлена документация по Telegram Mini App интеграции
4.0 KiB
4.0 KiB
Отображение запрошенных рейсов без данных
Проблема
Когда данных о рейсе нет, нужно показывать, по какому рейсу и запросу информация отсутствует.
Решение
Код автоматически извлекает информацию о запрошенных рейсах и показывает их даже если данных нет.
Способы передачи информации о запрошенных рейсах
Вариант 1: Прямая передача (рекомендуется)
В предыдущей ноде (перед Code Node) добавьте информацию о запрошенных рейсах:
// В Code Node перед "причесываем данные"
return [{
json: {
// Ваши данные
...existingData,
// Информация о запрошенных рейсах
requested_flights: ['MU747', 'CES747'], // Массив номеров рейсов
// ИЛИ
flight_number: 'MU747', // Один рейс
// ИЛИ
flight_numbers: ['MU747', 'CES747'] // Альтернативный формат
}
}];
Вариант 2: Автоматическое извлечение
Код автоматически пытается извлечь информацию о рейсах из:
- URL запросов (параметры
ident,flight_number,flight,callsign) - Query параметров
- Body запросов
- Прямых полей в JSON
Что отображается
Если рейс был запрошен, но данных нет, показывается карточка:
┌─ Рейс MU747 ───────────────┐
│ Запрошен │
│ │
│ Запрошенный рейс: MU747 │
│ │
│ [FlightAware] │
│ ✗ Данные не получены │
│ │
│ [FlightRadar24] │
│ ✗ Данные не получены │
└────────────────────────────┘
Пример использования
В предыдущей ноде (HTTP Request или Code Node):
// После запросов к FlightAware и FlightRadar24
return [{
json: {
data: [
{ body: { flights: [...] } }, // FlightAware ответ
{ body: { data: [...] } } // FlightRadar24 ответ
],
// Добавляем информацию о запрошенных рейсах
requested_flights: ['MU747', 'CES747']
}
}];
Или в отдельной ноде перед обработкой:
// Code Node: Prepare Request Info
const flightNumbers = ['MU747', 'CES747']; // Из вашего запроса
return [{
json: {
requested_flights: flightNumbers,
// Другие данные...
}
}];
Преимущества
✅ Прозрачность - видно, какие рейсы запрашивались
✅ Отладка - легко понять, почему данных нет
✅ Информативность - пользователь видит, что запрос был выполнен
✅ Автоматика - код пытается извлечь информацию автоматически
Если данные всё равно не показываются
- Проверьте, что передаёте
requested_flightsв предыдущей ноде - Убедитесь, что формат правильный: массив строк или объект с полем
flight_number - Проверьте логи в Code Node - там будут сообщения о найденных запрошенных рейсах