|
<< Оглавление >> Предварительное резервирование мест |
![]() ![]()
|
Function SetPreReservation(strInp: string): string;
Метод осуществляет резервирование указанных мест в БД таким образом, чтобы эти места на заданное время (глобальный параметр системы, от 3 до 30 мин.) стали недоступны для резервирования или бронирования с рабочего места ПО «ПрофТикет» и вызовам данного метода с другим значением идентификатора сессии. В том случае, если при попытке резервирования выяснится, что все или часть мест не являются свободными, резервирование таких мест не выполняется. Метод возвращает в качестве результата коллекцию кодов возврата, каждый элемент которой соответствует элементу исходной коллекции мест, и содержит код, указывающий на успешность или неуспешность выполнения резервирования. Метод можно вызывать сколько угодно раз в рамках одной сессии, пока места не будут забронированы и оплачены.
- NomBilKn - Идентификатор события - cod_sec Идентификатор сектора. - row ряд - seat место - session - Идентификатор сессии - [RemoteAddress] - IP адрес зрителя - [PromoCodeID] - Идентификатор промокода - [Price] - Цена билета - [DisableDiscount] - Флаг неиспользовать скидку абонементной кампании. 1 - не использовать скидку, 0 или не указано использовать скидку при ее наличии. - [PushkinCard]- Признак оплаты по Пушкинской карте. - [EmailSpektator] - Email зрителя для проверки промокода, привязанного к Email. - [CardNumber] - Номер или штрих-код дисконтной карты. - [BenefitId] - Идентификатор скидки
[URL площадки продажи билетов (необязательный раздел)] - SourceURL - URL площадки продажи билетов
[Подарочные сертификаты] - Number Номер сертификата
[Скидки] - BenefitId - Идентификатор вида скидочной карты - BenefitCardId - Номер скидочной карты
|
- cod_sec Идентификатор сектора. - name_sec Наименование сектора. - row ряд - seat место - price Цена билета (номинал).* - priceSell Цена билета (продажи)* В случае, если указан промокод, цена продажи учитывает скидку по промокоду. - priceForPay - Сумма к оплате. Если сертификаты не использутся, то равна цене продажи билета + сервисный сбор. - ServiceFee - Сервисный сбор. - priceSellFull - Сумма с учетом первоначальных наценок и скидок, без сервисного сбора, промокода и абонементной кампании, - priceReturn - Максимальная сумма возврата - CertificatePermitted - Место можно оплачивать сертификатом. - TTL - Время в секундах, после которого места, находящиеся в предварительном резервировании могут быть сняты автоматически, если они не попали в заказ. - PromoCodeID - Идентификатор промокода (если не указан во входных параметрах, то 0) - PromoPercent - Процент по промокоду (если указан Идентификатор промокода и промокод актуален, в противном случае - 0) - STCompanyDiscount - Процент скидки по абонементной кампании. - DisableDiscount - Флаг неиспользовать скидку абонементной кампании - DiscountProgramPercent - Процент скидки про дисконтной программе - PushkinCard - Признак оплаты по Пушкинской карте. - EmailSpektator - Email зрителя для проверки промокода, привязанного к Email. - TicketAsGift - Возможность купить билет в подарок. - StopRegistationDate - Дата и время, до которых разрешено оформление ПДн - BenefitId - Идентификатор скидки - result_code - Код ошибки. - result_message - описание ошибки
[Подарочные сертификаты] - Number Номер (штрих-код) сертификата - Amount Номинал - StartDate Дата начала действия сертификата. - StopDate Дата окончания действия сертификата.
[Скидки] - BenefitId - Идентификатор вида скидочной карты - BenefitCardId - Номер скидочной карты - BenefitDiscountPercent - Процент по скидочной карте - BenefitDiscountSum - Сумма скидки по скидочной карте (в случае скидки в твердой сумме)
|
Время, через которое предварительное резервирование будет снято автоматически, может немного отличаться от TTL в большую сторону. Это зависит от времени запуска сервиса автоматического снятия предварительного резервирования.
Обратите внимание! ✓Для создания заказа с промокодом, его необходимо указать в вызове метода бронирования SetReservation! ✓Для создания продажи с промокодом, его необходимо указать в вызове метода продажи SetSold. ✓Если указан входящий параметр Price (цена), будет произведена проверка цены. В случае несовпадения цены у любого из мест в передаваемом наборе ✓Результатом будет код ошибки 20, а также поле GatePrice, возращающее переданую цену. ✓Структуру данных при передаче списка сертификатов для оплаты! ✓Структуру данных при передаче URL площадки продажи билетов! ✓Структуру данных при передаче номера скидочной карты! |
<GateReq> <ReqLogin> <!-- Имя пользователя и пароль для авторизации --> <UserName>User</UserName> <UserPass>Password</UserPass> </ReqLogin> <ReqBody> <InputRow NomBilKn="234" cod_sec="1" row="1" seat="2" session="KFKDI23202828SBW4DAH8"/> [<Certificates Number="1234567890" Amount="500.00" StartDate="01.01.2026" StopDate="31.12.2026"> <Certificates Number="9876543210" Amount="500.00" StartDate="01.01.2026" StopDate="31.12.2026"> ] [<Discount BenefitId="24" BenefitCardNumber="01234567890" />] </ReqBody> </GateReq> |
<GateAnswer> <AnswerResult> <ResultCode>0</ResultCode><!-- Код ответа шлюза, общий для всего запроса--> <RecordCount>1</RecordCount><!-- Количество записей в возвращаемом "RecordSet-е" --> </AnswerResult> <AnswerBody> <Row NomBilKn="234" cod_sec="1" row="1" seat="2" session="KFKDI23202828SBW4DAH8" price="1000" priceSell="900" priceForPay="900" priceFull="1000" result_code="0" result_message="OK"/>
<Certificates Number="1234567890" Amount="500.00" StartDate="01.08.2020" StopDate="31.07.2021"> <Certificates Number="9876543210" Amount="500.00" StartDate="01.08.2020" StopDate="31.07.2021"> <Discount BenefitId="24" BenefitCardNumber="01234567890" DiscountPercent="10" DiscountSum="0.00" /> </AnswerBody> </GateAnswer> |