Interface SoapService


public interface SoapService
Внешний интерфейс сервиса по продаже билетов. Используется для доступа к сервису по протоколу SOAP. Данный интерфейс рекомендован для динамических языков (PHP), однако может быть использован и со статическими языками программирования.
Since:
24.10.2013 18:04
Author:
V.Skorykh
  • Method Summary

    Modifier and Type
    Method
    Description
    com.artmark.gds.domain.hibernate.model.Order
    bookOrder(String uid, com.artmark.gds.domain.hibernate.model.Sale[] sales)
    Бронирование заказа.
    com.artmark.gds.domain.hibernate.model.Order
    cancelOrder(long orderId)
    Отмена заказа.
    com.artmark.gds.domain.hibernate.model.Ticket
    cancelTicket(long ticketId)
    Отмена билета в заказе.
    com.artmark.gds.domain.hibernate.model.Order
    confirmOrder(long orderId, String paymentMethod, List<com.artmark.gds.domain.hibernate.model.TicketOption> options)
    Подтверждение оплаты заказа с возможностью изменить опции продажи.
    echo(String message)
    Эхо-метод, возвращающий ту же строку, что и получил.
    List<com.artmark.gds.domain.hibernate.model.Point>
    getArrivalPoints(long dispatchPointId, String pattern)
    Получение списка пунктов прибытия для заданного пункта отправления.
    com.artmark.gds.domain.hibernate.model.Carrier
    getCarrier(long ticketId)
    Получить информацию о перевозчике по идентификатору билета
    List<com.artmark.gds.domain.hibernate.model.Country>
    Получение списка стран.
    com.artmark.gds.domain.hibernate.model.DepotInfo
    getDepotInfo(long depotId)
    Получение информации об автовокзале.
    List<com.artmark.gds.domain.hibernate.model.DepotInfo>
    getDepots(long pointId)
    Получение списка автовокзалов, доступных для заданного пункта отправления.
    List<com.artmark.gds.domain.hibernate.model.Point>
    getDispatchPoints(long regionId)
    Получение списка доступных пунктов отправления, из которых возможно приобретение билетов
    List<com.artmark.gds.domain.hibernate.model.DocType>
    Получение списка типов документов, удостоверяющих личность, допустимых пи оформлении билетов.
    com.artmark.gds.domain.hibernate.model.Order
    getOrder(long orderId)
    Получение информации о заказе.
    com.artmark.gds.domain.hibernate.model.Race
    Получение информации о рейсе.
    com.artmark.gds.domain.hibernate.model.Carrier
    Получить информацию о перевозчике на рейсе.
    List<com.artmark.gds.domain.hibernate.model.Race>
    getRaces(long dispatchPointId, long arrivalPointId, Date date)
    Получение списка рейсов на заданную дату.
    List<com.artmark.gds.domain.hibernate.model.Seat>
    Получение списка свободных мест на рейсе.
    List<com.artmark.gds.domain.hibernate.model.Stop>
    Получение списка остановок на рейсе.
    com.artmark.gds.domain.hibernate.model.RaceSummary
    Получение сводной информации о рейсе.
    com.artmark.gds.domain.hibernate.model.Reference
    Получение информации из вспомогательного справочника.
    List<com.artmark.gds.domain.hibernate.model.Region>
    getRegions(long countryId)
    Получение списка регионов страны
    com.artmark.gds.domain.hibernate.model.ReturnInfo
    getReturnInfo(long ticketId)
    Получить информацию о правиле возврата, применимом для билета на текеущий момент
    com.artmark.gds.domain.hibernate.model.Ticket
    getTicket(long ticketId)
    Получение информации о билете.
    List<com.artmark.gds.domain.hibernate.model.TicketType>
    Получение списка типов билетов, доступных для продажи.
    Получение информации о версии GDS.
    com.artmark.gds.domain.hibernate.model.Ticket
    returnTicket(long ticketId)
    Возврат билета.
    com.artmark.gds.domain.hibernate.model.Ticket
    updateTicket(long ticketId, com.artmark.gds.domain.hibernate.model.Sale sale)
    Изменение персональных данных пассажира в забронированном или проданном билете.
  • Method Details

    • getVersion

      String getVersion()
      Получение информации о версии GDS. Метод может использоваться для проверки доступности GDS.
      Returns:
      Информация о версии GDS
    • echo

      String echo(String message)
      Эхо-метод, возвращающий ту же строку, что и получил. Может быть использован для проверки корректности работы с кодировками строк.
      Parameters:
      message - Отправляемое сообщение
      Returns:
      Получаемое сообщение. Должно соответствовать отправленному
    • getCountries

      List<com.artmark.gds.domain.hibernate.model.Country> getCountries()
      Получение списка стран. Список может использоваться для поиска пунктов отправления и для выбора гражданства.
      Returns:
      Список стран
    • getRegions

      List<com.artmark.gds.domain.hibernate.model.Region> getRegions(long countryId)
      Получение списка регионов страны
      Parameters:
      countryId - ID страны
      Returns:
      Список регионов
    • getDepots

      List<com.artmark.gds.domain.hibernate.model.DepotInfo> getDepots(long pointId) throws ServiceException
      Получение списка автовокзалов, доступных для заданного пункта отправления. Возвращает актуальную информацию по статусу автовокзала (онлайн/оффлайн). Поскольку составление списка сопровождается опросом автовокзалов, данные метод имеет довольно низкую производительность и может зависать, если какой-то автовокзал только что ушел в оффлайн. Не рекомендуется вызывать очень часто. Рекомендуется кэшировать результат.
      Parameters:
      pointId - ID пункта отправления, для которого надо получить список автовокзалов. Если указан 0, то возвращается полный список пунктов отправления.
      Returns:
      Список автовокзалов
      Throws:
      ServiceException
      Since:
      1.14.2
    • getDepotInfo

      com.artmark.gds.domain.hibernate.model.DepotInfo getDepotInfo(long depotId) throws ServiceException
      Получение информации об автовокзале. Функция может быть полезна для того, чтобы определить, какие возможности реализованы для данного автовокзала, узнать его адрес и условия работы. Рекомендуется кэшировать результат.
      Parameters:
      depotId - ID автовокзала
      Returns:
      Информация об автовокзале
      Throws:
      ServiceException
    • getDispatchPoints

      List<com.artmark.gds.domain.hibernate.model.Point> getDispatchPoints(long regionId)
      Получение списка доступных пунктов отправления, из которых возможно приобретение билетов
      Parameters:
      regionId - ID региона Если 0, то возвращается список для всех регионов
      Returns:
      Список мест, из которых можно купить билеты
    • getArrivalPoints

      List<com.artmark.gds.domain.hibernate.model.Point> getArrivalPoints(long dispatchPointId, String pattern)
      Получение списка пунктов прибытия для заданного пункта отправления.
      Parameters:
      dispatchPointId - ID места отправления
      pattern - Образец названия станции для поиска. Если null или пустая строка - возвращаются все записи.
      Returns:
      Список мест прибытия. Если указан pattern, то в списке будут только станции, название которых начинается на буквы, указанные в образце. Регистр не учитывается.
    • getRaces

      List<com.artmark.gds.domain.hibernate.model.Race> getRaces(long dispatchPointId, long arrivalPointId, Date date) throws ServiceException
      Получение списка рейсов на заданную дату. После запроса к автовокзалу информация о рейсах помещается в кэш для повторного использования. Времия жизни данных в кэше составляет минимум 15 минут.
      Parameters:
      dispatchPointId - ID места отправления
      arrivalPointId - ID места прибытия
      date - Дата отправления
      Returns:
      Список рейсов
      Throws:
      ServiceException
    • getRace

      com.artmark.gds.domain.hibernate.model.Race getRace(String uid) throws ServiceException
      Получение информации о рейсе. Ожидается, что данная операция вызывается непосредственно перед началом оформления брони, поэтому информация о рейсе не кэшируется. Для предотвращения излишней нагрузки на автовокзал следует избегать неоправданно большого количества вызовов данного метода.
      Parameters:
      uid - Универсальный идентификатор рейса
      Returns:
      Информация о рейсе
      Throws:
      ServiceException
    • getRaceStops

      List<com.artmark.gds.domain.hibernate.model.Stop> getRaceStops(String uid) throws ServiceException
      Получение списка остановок на рейсе.
      Parameters:
      uid - Универсальный идентификатор рейса
      Returns:
      Список остановок
      Throws:
      ServiceException
    • getRaceSeats

      List<com.artmark.gds.domain.hibernate.model.Seat> getRaceSeats(String uid) throws ServiceException
      Получение списка свободных мест на рейсе.
      Parameters:
      uid - Универсальный идентификатор рейса
      Returns:
      Список свободных мест
      Throws:
      ServiceException
    • getRaceCarrier

      com.artmark.gds.domain.hibernate.model.Carrier getRaceCarrier(String uid) throws ServiceException
      Получить информацию о перевозчике на рейсе.
      Parameters:
      uid - Race UID
      Returns:
      Информация о перевозчике
      Throws:
      ServiceException
    • getTicketTypes

      List<com.artmark.gds.domain.hibernate.model.TicketType> getTicketTypes(String uid) throws ServiceException
      Получение списка типов билетов, доступных для продажи.
      Parameters:
      uid - Универсальный идентификатор рейса
      Returns:
      Список типов билетов. Включает информацию о цене.
      Throws:
      ServiceException
    • getDocTypes

      List<com.artmark.gds.domain.hibernate.model.DocType> getDocTypes(String uid) throws ServiceException
      Получение списка типов документов, удостоверяющих личность, допустимых пи оформлении билетов.
      Parameters:
      uid - Универсальный идентификатор рейса
      Returns:
      Список типов документов
      Throws:
      ServiceException
    • getRaceSummary

      com.artmark.gds.domain.hibernate.model.RaceSummary getRaceSummary(String uid) throws ServiceException
      Получение сводной информации о рейсе. Если логика приложения требует последывательно вызывать методы getDepotInfo(), getRace(), getRaceStops(), getRaceSeats(), getTicketTypes() и getDocTypes(), то использование данного метода позволит сократить накладные расходы на передачу данных и получить все данные одним HTTP-запросом.
      Parameters:
      uid - Универсальный идентификатор рейса
      Returns:
      Сводная информация о рейсе
      Throws:
      ServiceException
      Since:
      1.7
    • bookOrder

      com.artmark.gds.domain.hibernate.model.Order bookOrder(String uid, com.artmark.gds.domain.hibernate.model.Sale[] sales) throws ServiceException
      Бронирование заказа. Бронь сохраняется в течение ограниченного времени, от 20 до 60 минут. Если в указанный период времени не поступает подтверждение оплаты через метод confirmOrder(), то бронирование автоматически отменяется.
      Parameters:
      uid - Универсальный идентификатор рейса
      sales - Информация о бронируемых билетах. За один раз может быть забронировано сразу несколько мест.
      Returns:
      Информация о сформированном заказе и билетах. Может быть неполной, так как на момент бронирования не все атрибуты заказа и билетов известны.
      Throws:
      ServiceException
    • confirmOrder

      com.artmark.gds.domain.hibernate.model.Order confirmOrder(long orderId, String paymentMethod, List<com.artmark.gds.domain.hibernate.model.TicketOption> options) throws ServiceException
      Подтверждение оплаты заказа с возможностью изменить опции продажи. Необходимо вызывать после получение уведомления об оплате заказа.
      Parameters:
      orderId - ID заказа
      paymentMethod - Способ оплаты. Допустимые значения: "Наличный расчет" - при оплате наличными, "По банковской карте" - при безналичной оплате.
      options - Опции продажи для билетов или null, если опций нет.
      Returns:
      Информация о заказе и билетах, дополненая после продажи.
      Throws:
      ServiceException
      Since:
      1.13.4
    • getOrder

      com.artmark.gds.domain.hibernate.model.Order getOrder(long orderId) throws ServiceException
      Получение информации о заказе.
      Parameters:
      orderId - ID заказа
      Returns:
      Информация о заказе и билетах. Извлекается из локальной базы GDS, статус заказа может не соответствовать реальному статусу заказа на автовокзале.
      Throws:
      ServiceException
    • getTicket

      com.artmark.gds.domain.hibernate.model.Ticket getTicket(long ticketId) throws ServiceException
      Получение информации о билете.
      Parameters:
      ticketId - ID билета
      Returns:
      Информация о билете. Извлекается из локальной базы GDS, статус билета может не соответствовать реальному статусу билетов на автовокзале.
      Throws:
      ServiceException
      Since:
      1.7
    • getCarrier

      com.artmark.gds.domain.hibernate.model.Carrier getCarrier(long ticketId) throws ServiceException
      Получить информацию о перевозчике по идентификатору билета
      Parameters:
      ticketId - ID билета
      Returns:
      Информация о перевозчике
      Throws:
      ServiceException
    • updateTicket

      com.artmark.gds.domain.hibernate.model.Ticket updateTicket(long ticketId, com.artmark.gds.domain.hibernate.model.Sale sale) throws ServiceException
      Изменение персональных данных пассажира в забронированном или проданном билете. Изменение типа билета, номера места или информации о льготе не поддерживается. На данный момент метод работает только для автовокзалов, использующих АСУ "Е-автовокзал". Для других систем будет поднят UnsupportedException. Поскольку персональные данные пассажиров передаются в ЗащитуИнфорТранс, желательно ограничивать время, в течение которого возможно исправление персональных данных пассажира.
      Parameters:
      ticketId - ID Билета
      sale - Обновленная информация. Исправить можно только персональные данные пассажира, изменение типа билета или номера места не поддерживается.
      Returns:
      Билет с обновленной информацией.
      Throws:
      ServiceException
      Since:
      1.7
    • returnTicket

      com.artmark.gds.domain.hibernate.model.Ticket returnTicket(long ticketId) throws ServiceException
      Возврат билета. Расчет суммы, подлежащей возврату, производится сервером автовокзала.
      Parameters:
      ticketId - ID билета
      Returns:
      Информация по билету после выполнения возврата
      Throws:
      ServiceException
    • cancelOrder

      com.artmark.gds.domain.hibernate.model.Order cancelOrder(long orderId) throws ServiceException
      Отмена заказа. При отмене заказа, который забронирован, но еще не оплачен, заказ помечается на удаление. Операция не приводит к освобождению забронированных мест, бронь снимается только по истечении срока бронирования заказа. При отмене заказа, который оплачен, делается попытка отмены заказа на сервере автовокзала. Возможен exception, если операция не поддерживается или отмена невозможна. ВНИМАНИЕ! Следует исходить из того, что в некоторых системах выполнение отмены заказа не поддерживается. В других же системах отмена возможна только в течение некоторого времени (~15 минут) после продажи. Если заказ не был оплачен, принудительно отменять его не надо.
      Parameters:
      orderId - ID заказа
      Returns:
      Информация о заказе после отмены
      Throws:
      ServiceException
    • cancelTicket

      com.artmark.gds.domain.hibernate.model.Ticket cancelTicket(long ticketId) throws ServiceException
      Отмена билета в заказе.
      Parameters:
      ticketId - ID билета
      Returns:
      Информация об отмененном билете
      Throws:
      ServiceException
      Since:
      1.10
    • getReference

      com.artmark.gds.domain.hibernate.model.Reference getReference(String code) throws ServiceException
      Получение информации из вспомогательного справочника.
      Parameters:
      code - Код справочника. Например: 'payment_methods' - допустимые способы оплаты заказа (значения используются при вызове confirmOrder()), 'kuzb_schools' - код справочника учебных заведений Кемеровской области.
      Returns:
      Справочник
      Throws:
      ServiceException
      Since:
      1.5
    • getReturnInfo

      com.artmark.gds.domain.hibernate.model.ReturnInfo getReturnInfo(long ticketId) throws ServiceException
      Получить информацию о правиле возврата, применимом для билета на текеущий момент
      Parameters:
      ticketId - ID билета
      Returns:
      Информация о правиле возврата
      Throws:
      ServiceException
      Since:
      1.14.12