Документ (RW_Document)

Документ (RW_Document) - документ, по которому пассажир способен выезжать, заселяться в отель либо регистрироваться на перевозку. Документ идентифицирует пассажира во всех услугах и является обязательным атрибутом оказания услуги:

  • id_Document (пример: "123") - первичный ключ контакта.
    Если мы создаем новый контакт, то значение не передаем, если редактируем существующий - передаем идентификатор;

  • id_Person (пример: "123") - Ссылка на идентификатор персоны (обязательное поле, число);

  • LastName (пример: "Иванов") - фамилия из документа персоны, передается в системы бронирования (необязательное поле, строка);

  • FirstName (пример: "Иван") - имя из документа персоны, передается в системы бронирования (необязательное поле, строка);

  • MiddleName (пример: "Иванович") - отчество из документа персоны, передается в системы бронирования (необязательное поле, строка);

  • id_Country (пример: "123") - Ссылка на идентификатор страны (обязательное поле, число);

  • id_DocumentType (пример: "2") - Ссылка на тип документа (обязательное поле, число);

    • 1 - Паспорт (иностранным документом считается паспорт, у которого принадлежность к стране не РФ)

    • 2 - Загранпаспорт;

    • 3 - Иностранный документ (сохраняется как “1” со страной, отличной от РФ);

    • 4 - Свидетельство. о рождении (тип доступен только при добавлении новой персоны);

    • 5 - Паспорт моряка;

    • 6 - Военный билет;

    • 8 - Служебный паспорт;

    • 9 - Дипломатический паспорт

  • DateGiven (пример: "2019-06-13T19:28:10.0280635+03:00") - дата выдачи документа (обязательное поле, строка);

  • DateValid (пример: "2019-06-13T19:28:10.0280635+03:00") - дата окончания действия документа (обязательное поле, строка);

  • Number (пример: "0308842962") - номер (или серия и номер) документа (обязательное поле, строка);
    Номер документа валидируется в зависимости от переданного типа (id_DocumentType):

    • 1 - Паспорт РФ. Номер должен содержать 10 цифр без пробелов (например: "0308945371"), выражение для валидации "[0-9]{10}";

    • 2 - Загранпаспорт. Номер должен содержать 9 цифр без пробелов (например: "123456789"), выражение для валидации "[0-9]{9}";

    • 3 - Иностранный документ. Номер должен быть не пустым;

    • 4 - Свидетельство о рождении. Заполняется следующим образом:

      • серия: римские цифры (необходимо набрать в латинском регистре буквами I, V, X), две буквы русской раскладкой клавиатуры;

      • далее без пробела номер (6 цифр).
        Пример: VIМУ123123, или VIIАФ876522, или IДН761692. Регулярное выражение для валидации: "^[XVIxvi]{1,6}[а-яА-Я]{2}[0-9]{6}$".

В интерфейсе редактирование документов доступно в редакторе персон.

Агент может зайти туда через раздел "Travel management" в редакторе договоров; клиенту меню "Настройки” > “Персоны и пользователи" будет доступно в соответствии с настройкой его роли.

Мы попадаем в список персон и, кликнув по любой, в открывшемся окне видим список документов:

image-20240507-165043-20240731-135121.png

 

Соответствие полей интерфейса полям модели:

Соответственно, действие, аналогичное редактированию документа из API, можно произвести на интерфейсе в разделе документов персоны.

Перед использованием метода необходимо пройти аутентификацию и получить валидный токен. Подробнее об этом: Авторизация (получение токена)

Для получения контекста документа используется сервис DocumentManagement.asmx

WSDL можно скачать с демо-сайта: https://demo.corteos.ru/XmlGate/V3/StaticData/Documents/DocumentManagement.asmx?wsdl

Для работы в продуктовой среде необходимо заменить “demo.corteos.ru на свой домен (на котором работают пользователи вашей компании).

В API реализованы следующие методы для работы с документом:

  1. GetV2 - получение документа по первичному ключу (RW_Document.id_Document);

  2. SaveV2 - создание нового документа или редактирование существующего;

  3. ListV2 - получение списка документов персоны;

  4. DeleteV2 - удаление документа по первичному ключу.

Подробное описание методов с примерами:

  1. Получение документа по первичному ключу (GetV2)

Для проведения выгрузки данных, необходимо передать первичный ключ документа (id_Document).

Запрос Ответ

  1. Создание нового документа или редактирование существующего (SaveV2)

Для сохранения изменений в уже созданном документе необходимо передать:

  • первичный ключ документа (id_Contact);

  • первичный ключ персоны (id_Person);

  • тип документа (id_ContactType);

  • значение документа (Content).

В том случае, если мы создаем новый контакт, первичный ключ не передаем.

Если нам надо удалить контакт, то в атрибуте deleted передаем значение true.

Для сохранения изменений в уже созданном документе необходимо передать первичный ключ документа (id_Document). В том случае, если мы создаем новый документ, первичный ключ не передаем.

Если нам надо удалить документ, то в атрибуте deleted передаем значение true.

Запрос на создание / Запрос на обновление / Ответ

  1. Получение списка документов персоны (ListV2)

Получить список документов можно по идентификатору персоны (id_Person), которой эти документы принадлежат. Данный параметр является обязательным.

Запрос Ответ

  1. Удаление документа по первичному ключу (DeleteV2)

Для удаления документа по первичному ключу (id_Document) используется метод DeleteV2.

Запрос Ответ