@@ -1,9 +1,9 @@
Спецификация протокола взаимной продажи билетов на транзиные рейсы
===========================================================================
**Версия документа: 1.1 **
**Версия документа: 2.0 **
**Дата изменения: 13 .09.2018**
**Дата изменения: 24 .09.2018**
Введение
========
@@ -17,6 +17,8 @@ UID остановочного пункта это ID станции одина
* UID начальной станции
* UID конечной станции
* время выхода из начальной станции
* индивидуальный номер перевозчика (ИНН,РНН)
Описание протокола
==================
@@ -109,7 +111,8 @@ XML-ответ в обязательном порядке имеет корне
### getFreeSeats
Получение списка свободных мест для рейса между указанными станциями. В параметре принимает ключ маршрута, дату и UIDы станции отправления и назначения
Получение списка свободных мест для рейса между указанными станциями. В параметре принимает ключ маршрута, дату и UIDы станции отправления и назначения пассажира.
В случае если рейс начинается в одних сутка а заканчивается в других, необходимо передавать дату в которой рейс находится в станции отправления пассажира.
**URL: \[BASE\_URL\]/transit/getFreeSeats**
@@ -127,6 +130,8 @@ XML-ответ в обязательном порядке имеет корне
<arrivalStationUid>90929359890589203498093209904288</arrivalStationUid>
<!-- время отправления со станции отпраления. в часовом поясе станции отправления. -->
<dispatchTime>10:00:00</dispatchTime>
<!-- ИНН перевозчика -->
<carrierCode>141478737450</carrierCode>
</RouteKey>
<!-- Дата отправления рейса со станции посадки поссажира -->
<date>2017-08-11</date>
@@ -170,7 +175,10 @@ XML-ответ в обязательном порядке имеет корне
обязана отменить бронь. Допускается бронирование нескольких билетов в рамках одного
заказа. В параметрах запроса передаются ключ маршрута, дата рейса
идентификатор станции отправления, идентификатор станции назначения,
информацию об агенте совершивший эту операцию.
информацию об агенте совершивший эту операцию.
В случае если рейс начинается в одних сутка а заканчивается в других,
необходимо передавать дату в которой рейс находится в станции отправления пассажира.
**URL: \[BASE\_URL\]/transit/bookOrder**
@@ -187,6 +195,8 @@ XML-ответ в обязательном порядке имеет корне
<arrivalStationUid>90929359890589203498093209904288</arrivalStationUid>
<!-- время отправления со станции отпраления. в часовом поясе станции отправления. -->
<dispatchTime>10:00:00</dispatchTime>
<!-- ИНН перевозчика -->
<carrierCode>141478737450</carrierCode>
</RouteKey>
<!-- Дата отправления рейса со станции посадки поссажира -->
<date>2017-08-11</date>
@@ -238,6 +248,8 @@ XML-ответ в обязательном порядке имеет корне
<arrivalStationUid>90929359890589203498093209904288</arrivalStationUid>
<!-- время отправления со станции отпраления. в часовом поясе станции отправления. -->
<dispatchTime>10:00:00</dispatchTime>
<!-- ИНН перевозчика -->
<carrierCode>141478737450</carrierCode>
</RouteKey>
<Ticket>
<!-- ID билета. Обязательно -->
@@ -304,6 +316,8 @@ XML-ответ в обязательном порядке имеет корне
<arrivalStationUid>90929359890589203498093209904288</arrivalStationUid>
<!-- время отправления со станции отпраления. в часовом поясе станции отправления. -->
<dispatchTime>10:00:00</dispatchTime>
<!-- ИНН перевозчика -->
<carrierCode>141478737450</carrierCode>
</RouteKey>
<!-- ID билета. Обязательно -->
<ticketId>4561143</ticketId>
@@ -349,7 +363,10 @@ select *
1. первый отрезок получен из индексов станций отправления и назначения билета
2. второй отрезок получен из индексов станций параметров запроса
Второе условие отсекает билеты у которых станция назначения совпадает с станцией отправления из парамеров.
Второе условие отсекает билеты у которых станция назначения совпадает с станцией отправления из парамеров.
В случае если рейс начинается в одних сутка а заканчивается в других,
необходимо передавать дату в которой рейс находится в станции TransitTripInfoRequest/dispatchStationUid.
**URL: \[BASE\_URL\]/transit/getTripInfo**
@@ -366,6 +383,8 @@ select *
<arrivalStationUid>90929359890589203498093209904288</arrivalStationUid>
<!-- время отправления со станции отпраления. в часовом поясе станции отправления. -->
<dispatchTime>10:00:00</dispatchTime>
<!-- ИНН перевозчика -->
<carrierCode>141478737450</carrierCode>
</RouteKey>
<!-- Дата отправления рейса со станции посадки поссажира -->
<date>2017-08-11</date>
@@ -464,6 +483,8 @@ select *
<arrivalStationUid>90929359890589203498093209904288</arrivalStationUid>
<!-- время отправления со станции отпраления. в часовом поясе станции отправления. -->
<dispatchTime>10:00:00</dispatchTime>
<!-- ИНН перевозчика -->
<carrierCode>141478737450</carrierCode>
</RouteKey>
</TransitRouteInfoRequest>
```
@@ -525,4 +546,44 @@ select *
```xml
<?xml version="1.0" encoding="UTF-8"?>
<SetStationInfoResponse/>
```
### TransitUpdateTicket
Редактирование атрибутов билета. Пока реализовано только редактирование флага явки.
**URL: \[BASE\_URL\]/transit/updateTicket**
Запрос:
```xml
<TransitUpdateTicketRequest>
<!-- ключ маршрута -->
<RouteKey>
<!-- UID станции отправления рейса -->
<dispatchStationUid>523243243209840293840293849895781093</dispatchStationUid>
<!-- UID конечной станции -->
<arrivalStationUid>90929359890589203498093209904288</arrivalStationUid>
<!-- время отправления со станции отпраления. в часовом поясе станции отправления. -->
<dispatchTime>10:00:00</dispatchTime>
<!-- ИНН перевозчика -->
<carrierCode>141478737450</carrierCode>
</RouteKey>
<Ticket>
<ticketId>5543543</ticketId>
<isGone>true</isGone>
</Ticket>
<Ticket>
<ticketId>545354</ticketId>
<isGone>false</isGone>
</Ticket>
</TransitUpdateTicketRequest>
```
Ответ:
```xml
<TransitUpdateTicketResponse>
</TransitUpdateTicketResponse>
```