XV

Конференция 1С-Рарус для корпоративных клиентов

14 – 18 октября 2022 года

Сочи, Красная поляна

Сочи, Красная поляна, Radisson Rosa Khutor 5*

При участии руководителей подразделений фирмы «1С»
и профессора МШУ Сколково Андрея Шишакова

Подробнее
Спикеры конференции

Описание методов веб-сервиса для интеграции 1С-Рарус:Управление отелем с сайтом гостиницы

angle-arrow-right

Веб-сервис «Обмен с сайтом»

Веб-сервис предназначен для обмена данными между решением «1С‑Рарус:Управление отелем» с сайтом гостиницы, а также для онлайн бронирования, отмены бронирования и оплаты бронирования.

Методы веб-сервиса:

  • GetServerVersion() — предназначен для проверки доступности веб сервиса.

    Входных параметров нет.

    Выходные параметры:

    Ответ — Тип «Строка» — версия веб сервиса.

  • GetListOfRooms() — предназначен для получения номеров доступных к выгрузке на сайт.

    Входные параметры:

    TypeOfRoomCode — Тип «Строка» — Код типа номера, по умолчанию «Неопределено». Если установлен, то буду получаться номера только указанного типа.

    HousingCode — Тип «Строка» — Код корпуса, по умолчанию «Неопределено». Если установлен, то будут получаться только номера в указанном корпусе.

    Floor — Тип «Число» — Этаж, по умолчанию «Неопределено». Если установлен, то будут получаться только номера на указанном этаже.

    UnitCode — Тип «Строка» — Код подразделения, по умолчанию «Неопределено». Если установлен, то будут получаться только номера по указанному подразделению.

    Выходные параметры:

    СписокНомеров — Список номеров, доступных к выгрузке.

    Алгоритм:

    По переданным кодам получаем тип номера и корпус. Далее передаем полученные данные, а также этаж в метод общего модуля и получаем список номеров доступных к выгрузке, определенные в рабочем месте настройки интеграции с внешними источниками. Для каждого номера заносим его наименование и код в конечный список номеров.

  • GetListOfBuildings() — предназначен для получения корпусов доступных к выгрузке.

    Входные параметры:

    UnitCode — Тип «Строка» — Код подразделения. Если передается код подразделения, то корпуса будут идти с выборкой по указанному подразделению.

    Выходные параметры:

    СписокКорпусов — Список корпусов, доступных к выгрузке.

    Алгоритм:

    Получаем список корпусов из метода общего модуля. Состав корпусов настраивается в решений в рабочем месте настройки интеграции с внешними источниками. Для каждого полученного корпуса заносим его наименование и код в конечный список корпусов.

  • GetListOfRoomTypes() — предназначен для получения типов номеров доступных к выгрузке.

    Входные параметры:

    UnitCode — Тип «Строка» — Код подразделения. Если передается код подразделения, то типы номеров будут идти с выборкой по указанному подразделению.

    Выходные параметры:

    Список Типов Номеров — Список типов номеров, доступных к выгрузке.

    Алгоритм:

    Получаем список типов номеров из метода общего модуля. Состав типов размещения настраивается в решений в рабочем месте настройки интеграции с внешними источниками. Для каждого полученного типа номера заносим его наименование и код в конечный список типов номеров.

  • GetListOfTypesOfAccomodation() — предназначен для получения типов размещений доступных к выгрузке.

    Входных параметров нет.

    Выходные параметры:

    Список Типов Размещений — Список типов размещений, доступных к выгрузке.

    Алгоритм:

    Получаем список типов размещений из метода общего модуля. Состав типов размещения определяется в рабочем месте настройки интеграции с внешними источниками. Для каждого полученного типа размещения заносим его наименование и код в конечный список типов размещений.

  • GetListOfUnits() — предназначен для получения списка подразделений, где включена интеграция с внешними источниками.

    Входных параметров нет.

    Выходные параметры:

    СписокПодразделений — Список подразделений, доступных к выгрузке.

    Алгоритм:

    Получаем список подразделений из метода общего модуля. Настройка подразделений определяется в рабочем месте настройки интеграции с внешними источниками. Для каждого полученного подразделения заносим его наименование и код в конечный список подразделений.

  • GetListOfTariffs() — предназначен для получения тарифов доступных к выгрузке.

    Входные параметры:

    UnitCode — Тип «Строка» — Код подразделения. Если передается код подразделения, то тарифы будут идти с выборкой по указанному подразделению.

    Выходные параметры:

    СписокТарифов — Список тарифов, доступных к выгрузке.

    Алгоритм:

    Получаем список тарифов из метода общего модуля. Состав тарифов определяется в рабочем месте настройки интеграции с внешними источниками. Для каждого полученного тарифа заносим его наименование и код в конечный список тарифов.

  • GetListOfOtherServices() — предназначен для получения услуг доступных для начисления с сайта.

    Входных параметры:

    UnitCode — Тип «Строка» — код подразделения.

    Выходные параметры:

    Список Прочих Услуг — Список дополнительных услуг, доступных при бронировании.

    Алгоритм:

    Получаем список услуг из метода общего модуля. Состав услуг определяется в рабочем месте настройки интеграции с внешними источниками. Для каждой полученной услуги заносим ее наименование, код и цену в конечный список услуг.

  • ExecuteCancelReservation() — предназначен для осуществления отмены брони по переданному номеру документа.

    Входные параметры:

    RoomOfReservation — Тип «Строка» — номер брони, которую необходимо отменить.

    Выходные параметры:

    Результат — Тип «Строка» — код документа отмены брони.

    Алгоритм:

    Проверяем переданный номер брони. Если всё в порядке получаем код документа отмены бронирования из метода общего модуля.

  • ExecutePaymentReservation() — предназначен для осуществления оплаты брони номеру документа и переданной сумме.

    Входные параметры:

    RoomOfReservation — Тип «Строка» — номер брони, которую необходимо оплатить.

    PaymentAmount — Тип «Число» — сумма оплаты.

    CounterpartyCode — Тип «Строка» — код контрагента.

    ContractCode — Тип «Строка» — код договора.

    Выходные параметры:

    PaymentResult — Тип «Структура» — Структура данных, которая содержит в себе:

    PaymentComplete — признак успешной или неуспешной оплаты брони.

    CounterpartyCode — код контрагента оплаты.

    ContractCode — код договора оплаты.

    Алгоритм:

    Проверяем переданный номер брони. Получаем контрагента и договор по переданным кодам. Проверяем соответствие контрагента брони и контрагента оплаты, который поступает на вход процедуры. Если всё в порядке получаем результат оплаты бронирования из метода общего модуля.

  • FormAGuest() — предназначен для формирования гостя по переданным параметрам.

    Входные параметры:

    Surname — Тип «Строка» — фамилия гостя.

    Name — Тип «Строка» — имя гостя.

    Patronymic — Тип «Строка» — отчество гостя.

    GusetTypeCode — Тип «Строка» — код типа гостя.

    CountryCode — Тип «Строка» — код страны для определения гражданства.

    PhoneNumber — Тип «Строка» — номер телефона гостя.

    Email — Тип «Строка» — почта гостя.

    UnitCode — Тип «Строка» — код подразделения.

    Выходные параметры:

    КодГостя — Тип «Строка» — код созданного гостя.

    Алгоритм:

    Проверяем переданные имя и фамилию. Определяем тип гостя и гражданство по переданным кодам. Если всё в порядке проверяем телефон и почту по базе, если таких данных нет, создаем нового гостя и получаем его код из метода общего модуля усккУправлениеОтелем.СоздатьГостя(ФИО, ТипГостя, Гражданство).

  • ExecuteReservation() — предназначен для осуществления бронирования по переданным параметрам.

    Входные параметры:

    TariffCode — Тип «Строка» — код тарифа.

    UnitCode — Тип «Строка» — код подразделения.

    RoomTypeCode — Тип «Строка» — код типа номера.

    RoomNumberCode — Тип «Строка» — код номера размещения(необязательно).

    AccommodationTypeCode — Тип «Строка» — код типа размещения.

    GuestCode — Тип «Строка» — код гостя.

    BeginningDate — Тип «Дата» — дата начала бронирования.

    EndDate — Тип «Дата» — дата окончания бронирования.

    CounterpartyCode — Тип «Строка» — код контрагента, по умолчанию «Неопределено».

    ContractCode — Тип «Строка» — код договора, по умолчанию «Неопределено».

    OtherServiceList — Тип «OtherServiceStringList» — список дополнительных услуг.

    Comment — Тип «Строка» — Комментарий к бронированию.

    GetPricesFromBase — Тип «Булево» — признак, брать цены на дополнительные услуги из базы.

    Выходные параметры:

    ПараметрыБронирования — Тип «Структура» — структура данных, которая содержит в себе:

    Code — код документа бронирования.

    Sum — сумма документа бронирования.

    Алгоритм:

    Получаем контрагента, договор, гостя, тариф, номер размещения (в случае отсутствие, будет произведен автоподбор номера по переданным параметрам), тип размещения по переданным кодам. Так же проверяем дополнительную информацию по переданным услугам, вне тарифа. Проверяем корректность данных. Если всё в порядке получаем код документа бронирования из метода общего модуля.

  • GetPrices() — предназначен для получения цен в разрезе сезонов.

    Входные параметры:

    StartDate — Тип «Дата» — дата начала.

    EndDate — Тип «Дата» — дата окончания.

    UnitCode — Тип «Строка» — код подразделения.

    TariffCode — Тип «Строка» — код тарифа.

    TypeOfAallocationCode — Тип «Строка» — код типа размещения.

    TypeOfNumberCode — Тип «Строка» — код типа номера.

    PriceTypeCode — Тип «Строка» — код типа цен.

    Выходные параметры:

    Список Цен — Список цен, для каждого сезона, если они есть в промежутке даты начала и конца.

    Алгоритм:

    Получаем подразделение, тип цен, тип номера, тариф, тип размещения по переданным кодам. Проверяем корректность данных. Если всё в порядке получаем таблицу цен в разрезе сезонов из метода общего модуля.

  • GetContractor() — предназначен для получение контрагента гостя.

    Входных параметры:

    GuestCode — Тип «Строка» — код гостя.

    Выходные параметры:

    СписокКонтрагентов — Список контрагентов гостя.

    Алгоритм:

    Получаем код гостя, проверяем корректность. Если все в порядке, получаем список контрагентов из метода общего модуля.

  • GetRoomTypeInfo() — предназначен для определения параметров типа номера.

    Входных параметры:

    RoomTypeCode — Тип «Строка» — код типа номера.

    Выходные параметры:

    Данные Типа Номера — Список параметров для типа номера.

    Алгоритм:

    Получаем код типа номера, проверяем корректность. Если все в порядке, получаем список параметров для типа номера из метода общего модуля.

  • GetRoomCount() — предназначен для определение количество свободных номеров указанного типа.

    Входных параметры:

    RoomTypeCode — Тип «Строка» — код типа номера(необязательный).

    AccomodationTypeCode — Тип «Строка» — код типа размещения.

    BeginningDate — Тип «Дата» — дата начала.

    EndDate — Тип «Дата» — дата окончания.

    UnitCode — Тип «Строка» — код подразделения.

    Выходные параметры:

    Список Номеров На Выход — Список количества доступных номеров по типам.

    Алгоритм:

    Получаем тип размещения, тип номера(если не задано, вернет по всем доступным типам для выгрузки сайта), по переданным кодам, проверяем корректность. Если все в порядке, получаем список Список Доступных Номеров из метода общего модуля, далее для этого списка определяем перечень свободных номеров, в разрезе дат начала и конца.

  • GetPricesPerDay() — предназначен для получения цен в разрезе сезонов по дням.

    Входные параметры:

    StartDate — Тип «Дата» — дата начала.

    EndDate — Тип «Дата» — дата окончания.

    UnitCode — Тип «Строка» — код подразделения.

    TariffCode — Тип «Строка» — код тарифа.

    TypeOfAallocationCode — Тип «Строка» — код типа размещения.

    TypeOfNumberCode — Тип «Строка» — код типа номера.

    PriceTypeCode — Тип «Строка» — код типа цен.

    Выходные параметры:

    Список Цен — Список цен по дням, для каждого сезона, если они есть в промежутке даты начала и конца.

    Алгоритм:

    Получаем подразделение, тип цен, тип номера, тариф, тип размещения по переданным кодам. Проверяем корректность данных. Если всё в порядке получаем таблицу цен по дням в разрезе сезонов из метода общего модуля.

  • GetReservationInfo() — предназначен для получения дополнительной информации по брони.

    Входные параметры:

    RoomOfReservation — Тип «Строка» — номер брони.

    ReservationDate — Тип «Дата» — дата брони.

    Выходные параметры:

    Параметры Бронирования — Тип значение «Структура» — структура параметров, которая включает в себя.

    Sum — Тип «Число» — сумма брони.

    GuestName — Тип «Строка» — главный гость.

    Алгоритм:

    По номеру брони получаем документ бронирования. Выполняем проверку, корректно ли указан документ брони — нет ли отмены/размещения, совпадает ли дата, найдена ли бронь. Если все в порядке, то получаем данные брони — сумму и ФИО главного гостя.

Другие статьи (посмотреть все статьи) о настройках и работе в «1С‑Рарус:Управление отелем»:

download-back
Не нашли ответ,
который искали?
Задайте вопрос
через форму
Заинтересованы в сотрудничестве?
Нужна консультация?
Свяжитесь с нами!