Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Здравствуйте,
- Нужно написать тестовый интерфейс для SOAP API компании Sabre.
- https://developer.sabre.com/docs/read/SOAP_APIs
- Интересует секция https://developer.sabre.com/docs/read/soap_apis/air/search и ее подпункты
- а) Air Availability
- b) Air Schedules And Availability
- c) Bargain Finder Max
- Необходимо функционал:
- 1) Ввод данных при помощи XML запроса
- 2) Ввод данных при помощи формы
- 3) Вывод результатов в табличном виде
- 4) Возможность выбирать кол-во результатов на странице
- 5) Возможность задать колонки которые будут фильтроваться
- 6) Возможность просматривать "сырой" XML ответ в отформатированном виде
- Подробнее по фунционалу
- 1) Мы вводим в texarea xml запрос, который мы самостоятельно составили, например вот такой
- <!-- OTA_AirAvailRQ Sample Request Payload -->
- <RequestPayload>
- <OTA_AirAvailRQ Version="2.2.0" xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <OriginDestinationInformation>
- <FlightSegment DepartureDateTime="12-21">
- <DestinationLocation LocationCode="DFW"/>
- <OriginLocation LocationCode="HNL"/>
- </FlightSegment>
- </OriginDestinationInformation>
- </OTA_AirAvailRQ>
- </RequestPayload>
- 2) Скрипт сам составляет xml запрос из данных, которые мы вбили в форму. В форме должны быть следующие поля:
- - From \ To: текстовый инпут, 3-х буквенный код аэропорта, например JFK, LHR, DME
- - Date from \ Date to: - Datepicker, Дата вылета и прилета
- - Flight Type: чекбокс, One way \ Round trip - тип полета, в одну сторону или туда-обратно
- - Flight Class: селект, Any, Economy, Business, First
- - Number of passengers: текстовый инпут, Кол-во пассажиров
- - Passenger age: текстовый инпут, возраст пассажира - 18-65 по умолчанию
- - Allowed Carrier(s): текстовый инпут, Список разрешенный перевозчиков, один или более, перечисляется через запятую, например AA | AA, BA. Данное поле может быть пустым.
- - Blocked Carrier(s): текстовый инпут, Список запрещенных перевозчиков, один или более, перечисляется через запятую, например AA | AA, BA. Данное поле может быть пустым.
- - Number of stops: текстовый инпут, кол-во остановок во время полета. Если пусто, то неограниченное кол-во, если 0 - то прямой полет, без остановок, если 1-2-3 то разрешено максимум 1-2-3 остановки
- - Connecting Airport: текстовый инпут, Аэропорт или аэропорты, где возможны стыковки. Например: JFK | JFK, EWR
- - Booking Class: текстовый инпут, Код класса: B | C, D, K
- - Exclude Codeshare - Чекбокс, Исключать Кодшер полеты, пример: рейс AA1001 operated by BA
- - Flight Number: текстовый инпут, Номер полета, на котором искать билеты. Например: SU101, BA1234
- 3) Из полученного xml ответа сформировать таблицу, в которой будет представлен ответ в отформатированном виде. Поскольку мы не знаем, сколько колонок в таблице будет, то выводим все данные в разных колонках. По умолчанию отображаются все возможные колонки, которые формируются из ответа.
- 4) Сколько результатов поиска отображать в таблице, по умолчанию все результаты
- 5) Возможно нам понадобятся не все колонки, которые мы получим в результате поиска. В данном файле \ разделе мы будем указывать колонки, которые нам не нужны и которые выводить не надо.
- 6) В отдельном окне отображать полученный XLM ответ в сыром виде. Нужно минимальное форматирование, такое как тут:
- http://joxi.ru/V2VLdxnf6eGjrv
- Крайне желательно, что бы у вас был уже опыт в работе с подобным или подобными API travel, airline тематики.
- Язык реализации желателен PHP, но в принципе мы им не ограничены.
- Полный доступ к АПИ есть!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement