Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 39 additions & 13 deletions walkthrough/order_example.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,30 @@
0. :ref:`Получаем <walkthrough/events/simple>` информацию о событиях
====================================================================

На этом этапе выбираем мероприятие, на которое будем проводить заказ. Отправляем запрос Events
в gRPC-сервис `tc-simple <https://github.com/ticketscloud/docs>`_, в полученном списке находим
нужное мероприятие и берём его id. Допустим, это `5d7134962110d30a34e95b96`. Также в ответе будут
id сетов -- например, `5d7135112110d30a34e97e2d`.
На этом этапе выбираем мероприятие, на которое будем проводить заказ. Отправляем запрос EventsRequest
в gRPC-сервис v3.Simple.Events `tc-simple <https://github.com/ticketscloud/docs/blob/master/doc/docs.md#Event>`_.
В полученном списке находим нужное мероприятие и берём его id. Допустим, это `5d7134962110d30a34e95b96`.
Также в ответе будут сеты -- например, `5d7135112110d30a34e97e2d`, а в структуре сета -- поле tariffs,
содержащее id тарифов, которые можно применить к билетам из этого сета (допустим, [`6a3be59db15852c994a0acf2`])


1. Получаем информацию о билетах
====================================================================

Для последующего заказа билетов с местом -- передаём id мероприятия в запросе Seats
в gRPC-сервис `tc-simple <https://github.com/ticketscloud/docs>`_,
Для последующего заказа билетов с местом -- передаём id мероприятия в запросе SeatsRequest
в gRPC-сервис v3.Simple.Seats `tc-simple <https://github.com/ticketscloud/docs/blob/master/doc/docs.md#Seats>`_,
в полученном списке находим места и получаем id билетов (допустим, `5d7134962110d30a34e95cfe`).
Если билетов с местами в продаже не будет, этот шаг пропускается.

2. Получаем дополнительные тарифы
=================================

2a. Создаем заказ (добавляем билет :ref:`без места <walkthrough/order_create/random>`)
Для получения тарифов делаем запрос TariffsRequest в gRPC-сервис v3.Simple.Tariffs
`tc-simple <https://github.com/ticketscloud/docs/blob/master/doc/docs.md#Tariffs>`_,
в полученном списке находим нужные тарифы по id.
Можно указать нужные id тарифов сразу в запросе {"ids": ["6a3be59db15852c994a0acf2"]}.

3a. Создаем заказ (добавляем билет :ref:`без места <walkthrough/order_create/random>`)
======================================================================================

Берем id добавляемого сета из п.0
Expand Down Expand Up @@ -133,10 +141,10 @@ id сетов -- например, `5d7135112110d30a34e97e2d`.
}


3a. Заполняем заказ (добавляем билет :ref:`с местом <walkthrough/order_create/ticket>`)
4a. Заполняем заказ (добавляем билет :ref:`с местом <walkthrough/order_create/ticket>`)
=======================================================================================

Берем id добавляемого места из п.1, но при этом еще добавляем id билета, полученного в ответе из п.2a
Берем id добавляемого места из п.1, но при этом еще добавляем id билета, полученного в ответе из п.3a

.. sourcecode:: http

Expand Down Expand Up @@ -262,7 +270,7 @@ id сетов -- например, `5d7135112110d30a34e97e2d`.
}


2b. Создаем заказ (добавляем билет :ref:`с местом <walkthrough/order_create/ticket>`)
3b. Создаем заказ (добавляем билет :ref:`с местом <walkthrough/order_create/ticket>`)
=====================================================================================

Берем id добавляемого места из п.1
Expand Down Expand Up @@ -371,10 +379,10 @@ id сетов -- например, `5d7135112110d30a34e97e2d`.
}


3b. Заполняем заказ (добавляем билет :ref:`без места <walkthrough/order_create/random>`)
4b. Заполняем заказ (добавляем билет :ref:`без места <walkthrough/order_create/random>`)
========================================================================================

Берем id добавляемого сета из п.2b (или из п.0), но при этом еще дописываем id сета от добавленного билета из п.2
Берем id добавляемого сета из п.3b (или из п.0), но при этом еще дописываем id сета от добавленного билета из п.3

.. sourcecode:: http

Expand All @@ -389,8 +397,26 @@ id сетов -- например, `5d7135112110d30a34e97e2d`.
}
}

5. Выбираем тарифы для билетов
==============================

Если организатор мероприятия добавил дополнительные тарифы, то на этом этапе мы можем выбрать их для каждого билета.
Для этого отправляем PATCH-запрос с указанием параметра "tariffs" в формате объекта {<id билета>: <id тарифа>}
id билета берем из ответа на запрос создания заказа, а id тарифа -- из ответа на запрос тарифов на шаге 2.

.. sourcecode:: http

PATCH /v2/resources/orders/5d8b924971a0bf323bd6a6ed HTTP/1.1
Authorization: key 9bd8359943b545500278875r49c5b96d
Content-Type: application/json

{
"tariffs": {
"5d7135113f18da51a186ad16": "6a3be59db15852c994a0acf2" // <id билета>: <id тарифа>
}
}

4. :ref:`Завершаем <walkthrough/order_finish/begin>` заказ
6. :ref:`Завершаем <walkthrough/order_finish/begin>` заказ
==========================================================

.. sourcecode:: http
Expand Down