Мастер-Тур:Работа с методами веб-сервисов — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[непроверенная версия][непроверенная версия]
Строка 204: Строка 204:
 
*dateTo - дата, заканчивая которой ищутся изменения.
 
*dateTo - дата, заканчивая которой ищутся изменения.
 
Возвращаемое значение - булевая переменная, определяющая, были ли произведены изменения по путевке за указанный период.
 
Возвращаемое значение - булевая переменная, определяющая, были ли произведены изменения по путевке за указанный период.
===Auth===
+
===Мастер-Web: Способы аутентификации===
 +
Аутентификация – это процедура, проверяющая, имеет ли пользователь с предъявленным идентификатором право на доступ к ресурсу - [[Мастер-Web: Способы аутентификации|Способы аутентификации]].
 +
====Метод Authenticate====
 +
При аутентификации через Web-сервис используется метод Authenticate ([[Мастер-Web: Способы аутентификации#Аутентификация через Web-сервис|Метод Authenticate]]). В этом случае передаются параметры:
 +
*userName – логин;
 +
*password – пароль.
 +
При проверке соответствия имени и пароля пользователя возвращается булевское значение: true – в случае успешной аутентификации, в противном случае false.
 +
===AnnulateService===
 +
Данный модуль предназначен для отправки запроса на аннуляцию путевки из сторонних приложений - [[Мастер-Web:Дополнительный модуль Сервис для отправки запроса на аннуляцию путевки| Сервис для отправки запроса на аннуляцию путевки]].
 +
====Метод SendAnnulate====
 +
Метод SendAnnulate предоставляет возможность отправлять заявку на аннуляцию путевки от имени on-line пользователя указанного в параметрах вызова метода - [[Мастер-Web:Дополнительный модуль Сервис для отправки запроса на аннуляцию путевки#Отправка заявки на аннуляцию (метод SendAnnulate)|Метод SendAnnulate]].
  
===AnnulateService===
+
Сигнатура метода - string SendAnnulate(string code, string login, string password)
  
 +
Параметры, принимаемые методом:
 +
*code - строковая переменная, представляющая собой код предлагаемой к аннуляции путевки;
 +
*login - строковая переменная, представляющая собой логин пользователя, от имени которого отправляется заявка на аннуляцию;
 +
*password - строковая переменная, представляющая собой пароль для доступа в систему on-line бронирования пользователя, от имени которого отправляется заявка на аннуляцию.
 +
Возвращаемые значения - метод возвращает результат своей работы в виде строкового значения. Возможны следующие значения:
 +
*Вам запретили доступ к системе.
 +
*Вы ввели неправильный пароль \ Попробуйте еще раз. Обратите внимание, не включен ли у Вас Caps Lock \ и на каком языке Вы вводите пароль.
 +
*Договор с туроператором не заключен или его действие закончилось!
 +
*Путевка {0} не найдена!
 +
*Неверно задан пользователь!
 +
*У указанного пользователя нет прав на аннуляцию заданной путевки!
 +
*Запрос на аннулирование заявки {0} по стране {1} успешно отослан.
 +
*Ошибка. Не удалось отправить запрос.
 
===WsAuthorization===
 
===WsAuthorization===
  
Строка 229: Строка 252:
 
'''jsFlightSearchFilter:'''
 
'''jsFlightSearchFilter:'''
 
{"flightSearchParams":{"ctto":275, "cnfrom":460,"bdate":"2010-12-15"}}
 
{"flightSearchParams":{"ctto":275, "cnfrom":460,"bdate":"2010-12-15"}}
===CheckQuotesService===
+
===Сервис по проверке наличия мест (CheckQuotesService)===
 +
Модуль «Сервис проверки наличия мест» предназначен как для проверки квот на одну конкретную услугу, так и на совокупность услуг - [[Мастер-Web:Дополнительный модуль Сервис по проверке наличия мест|Сервис по проверке наличия мест]].
 +
====Метод CheckQuotes====
 +
Метод позволяет осуществить проверку квот на совокупность услуг - [[Мастер-Web:Дополнительный модуль Сервис по проверке наличия мест#Сигнатура вызова|Метод CheckQuotes]]
 +
 
 +
Сигнатура метода - public QuotaResult.Status CheckQuotes(List<Megatec.Travel.Entities.Service>services, DateTime tourDate, int tourDuration, int currentUserKey)
  
 +
Параметры, принимаемые методом:
 +
*services - коллекция услуг, на которые необходимо проверить квоты
 +
*tourDate - дата начала тура
 +
*tourDuration - продолжительность тура
 +
*currentUserKey - ключ агентства в таблице партнеров
 
===Распределенный поиск (ComplexTourService)===
 
===Распределенный поиск (ComplexTourService)===
 
Модуль «Распределенный поиск» предназначен для отображения в едином поисковом модуле как своих, так и сторонних предложений. Модуль позволяет осуществлять поиск и бронирование туров от различных туроператоров в одном приложении ПК Мастер-Web - [[Мастер-Web:Дополнительный модуль Распределенный поиск|Распределенный поиск]].
 
Модуль «Распределенный поиск» предназначен для отображения в едином поисковом модуле как своих, так и сторонних предложений. Модуль позволяет осуществлять поиск и бронирование туров от различных туроператоров в одном приложении ПК Мастер-Web - [[Мастер-Web:Дополнительный модуль Распределенный поиск|Распределенный поиск]].

Версия 16:21, 1 февраля 2013

Статья находится на стадии разработки.

Содержание

Введение

Обзор

Краткое описание, что такое web-сервиса и для чего они нужны В этой статье собраны ссылки на статьи с описаниями работы Web-сервисов.

Установка

Общее описание установки web-сервисов. Тонкости, отличительные особенности и т.д.

Список существующих web-сервисов

Сервис 1

Краткое описание сервиса 1 (для чего он нужен). Ссылка на статью.

Метод 1

Описание метода
Сигнатура метода
Описание принимаемых методом параметров
Возвращаемые значения

Либо краткое описание и ссылка внутрь статьи, где именно описан этот метод.

Метод 2

Описание метода
Сигнатура метода
Описание принимаемых методом параметров
Возвращаемые значения

Либо краткое описание и ссылка внутрь статьи, где именно описан этот метод.

Метод 3

Описание метода
Сигнатура метода
Описание принимаемых методом параметров
Возвращаемые значения

Либо краткое описание и ссылка внутрь статьи, где именно описан этот метод.

Поисковый сервис (Search)

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

Метод Search.DoSearch

Метод Search.DoSearch позволяет осуществлять поиск туров - Метод Search.DoSearch

Метод DoSearch обладает параметрами:

  • SearchFilter filter – объект класса, описывающего критерии подбора тура
  • int pageNumber – порядковый номер запрашиваемой страницы
  • SearchParams searchParams – объект класса, описывающего параметры подбора тура

Сервис возвращает объект класса SearchResult, содержащий коллекцию объектов класса SearchResultItem.

AddCostLogic

AdminService

ApplicationsLog

CalculatePriceListDynamic

DictionaryService

QuotaLogic

TourMarginLogic

UserService

TourML

Сервис по оплате путевок внешними системами (сервис для интеграции с платежной системой, прием наличных через платежный терминал, FinanceService)

Данный модуль предназначен для проверки заявки и проведения платежа через платежную систему в базу туроператора(Сервис для интеграции с платежной системой). Модуль совместим со следующими платежными системами:

  • TourPay
  • Контакт
  • Лидер

Метод GetUserToken

Метод GetUserToken возвращает строку - идентификатор аутентификации, который используется для подтверждения авторизации при вызове методов web-сервисов - Метод GetUserToken.

Сигнатура метода - public TokenResult GetUserToken(string userLogin, string userPassword)

Принимаемые методом параметры:

  • userLogin - имя пользователя;
  • userPassword - пароль.

Возвращаемые значения - метод возвращает результат своей работы в виде класса TokenResult. Корректность результата проверяется значением поля ErrorCode данного класса:

  • 0 - результат корректный;
  • 2 – внутренняя ошибка;
  • 5 - неправильный логин или пароль.

Описание класса приведено ниже:

public class TokenResult
 {
     public int ErrorCode;
     public string Token;
 }
 

где

  • ErrorCode - код результата;
  • Token - идентификатор аутентификации.

Метод CheckReservation

Метод CheckReservation предназначен для проверки наличия заявки в БД и определения ее стоимости - Метод CheckReservation. Сигнатура метода - public AmountSum CheckReservation(string userToken, string dgCode)

Принимаемые методом параметры:

  • userToken - идентификатор аутентификации, полученный при вызове метода GetUserToken;
  • dgCode - строковая переменная, представляющая собой код проверяемой путевки.

Возвращаемые значения - метод возвращает результат своей работы в виде класса AmountSum. Корректность результата проверяется значением поля ErrorCode данного класса:

  • 0 – результат корректный, в полях возвращены корректные значения;
  • 1 – заявка не найдена в БД;
  • 2 – внутренняя ошибка;
  • 3 - заявка была аннулирована;
  • 4 - путевка уже оплачена;
  • 6 - некорректный или устаревший идентификатор аутентификации(token).

Ниже приводится описание класса.

public class AmountSum
    {
        public double Amount
        public string RateCode
        public double NationalCurrencyPrice
        public string NationalRateCode
        public int ErrorCode
        public int FilialKey
        public DateTime BeginTourDate
        public DateTime EndTourDate
    }
  • Amount - сумма к оплате в валюте тура;
  • RateCode - iso-код валюты тура;
  • NationalCurrencyPrice - сумма к оплате в национальной валюте;
  • NationalRateCode - iso-код национальной валюты;
  • ErrorCode - код результата;
  • FilialKey - ключ филиала, который создал заявку;
  • BeginTourDate - дата начала тура;
  • EndTourDate - дата окончания тура.

Метод CreatePayment

Метод CreatePayment предназначен для создания платежа по путевке в финансовом блоке ПК Мастер-Тур - Метод CreatePayment. Сигнатура метода - public int CreatePayment(string userToken, DateTime date, Decimal sum, string currencyIsoCode, string reservationCode, string paymentId)

Принимаемые методом параметры:

  • userToken - идентификатор аутентифкации;
  • date – дата проведения платежа;
  • sum – сумма платежа;
  • currencyIsoCode – ISO-код валюты, в которой осуществляется платеж;
  • reservationCode – номер путевки;
  • paymentId – идентификатор платежа во внешней системе.

Возвращаемые значения - метод возвращает целочисленное значение обозначающее результат выполнения операции:

  • 0 – операция выполнена успешно, платеж проведен;
  • 1 – заявка не найдена в БД;
  • 2 – внутренняя ошибка при создании платежа;
  • 3 - заявка была аннулирована;
  • 4 - путевка уже оплачена;
  • 6 - некорректный или устаревший идентификатор аутентификации(token).

При этом в БД создается платеж по выбранной путевке.

MasterTourFacade

Сервис по работе с курсами валют (Rates)

Данный модуль предназначен для работы с курсами валют - Сервис по работе с курсами валют.

Метод GetCourse

Метод GetCourse служит для получения кросс-курса валют - Метод GetCourse.

Для получения результата необходимо передать следующие значения:

  • «rateCodeFrom» - код валюты, кросс-курс которой нужно вывести
  • «rateCodeTo» - код валюты 2
  • «exchangeDate» - дата, на которую необходимо взять курсы валют.

Результаты возвращаются в виде xml-файлов.

Метод Exchange

Метод Exchange служит для пересчета стоимости из одной валюты в другую - Метод Exchange.

Для получения результата необходимо передать следующие значения:

  • «cost» - сумма или стоимость, которую нужно пересчитать
  • «rateCodeFrom» - код валюты, из которой нужно произвести конвертацию
  • «rateCodeTo» - код валюты, в которую необходимо конвертировать стоимость
  • «exchangeDate» - дата, на которую необходимо взять курсы валют.

Результаты возвращаются в виде xml-файлов.

Метод GetNationalCourse

Метод GetNationalCourse служит для получения курса валюты - Метод GetNationalCourse.

Для получения результата необходимо передать следующие значения:

  • «rateCode - код валюты, курс которой нужно получить
  • «exchangeDate» - дата, на которую необходимо взять курс валют.

Результаты возвращаются в виде xml-файлов.

Метод GetNationalCourseToday

Метод GetNationalCourseToday служит для получения курса валюты на текущую дату - Метод GetNationalCourseToday.

Для получения результата необходимо передать следующие значения:

  • «rateCode - код валюты, курс которой нужно получить

Результаты возвращаются в виде xml-файлов.

Метод GetNationalRateCode

Метод GetNationalRateCode служит для получения кода национальной валюты - Метод GetNationalRateCode.

Данный метод не принимает параметров.

Результаты возвращаются в виде xml-файлов.

Сервис по работе с заявками (BookingManager)

Данный модуль предназначен для работы с заявками, в которых были произведены изменения - Сервис по работе с заявками.

Метод GetChangedBookings

Метод GetChangedBookings служит для формирования списка путевок, по которым были произведены изменения за заданный период - Метод GetChangedBookings.

Сигнатура метода - List<SimpleDogovor> GetChangedBookings(DateTime dateFrom, DateTime dateTo)

Параметры, принимаемые методом:

  • dateFrom - дата, начиная с которой ищутся изменения;
  • dateTo - дата, заканчивая которой ищутся изменения.

Возвращаемое значение - коллекция путевок представленных классом SimpleDogovor

Метод VerifyBookingChanges

Метод VerifyBookingChanges служит для определения, были ли произведены изменения по конкретной путевке Метод VerifyBookingChanges.

Сигнатура метода - bool VerifyBookingChanges(int dogovorKey, DateTime dateFrom, DateTime dateTo)

Параметры, принимаемые методом:

  • dogovorKey – ключ путевки, по которой определяется наличие изменений;
  • dateFrom - дата, начиная с которой ищутся изменения;
  • dateTo - дата, заканчивая которой ищутся изменения.

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

Мастер-Web: Способы аутентификации

Аутентификация – это процедура, проверяющая, имеет ли пользователь с предъявленным идентификатором право на доступ к ресурсу - Способы аутентификации.

Метод Authenticate

При аутентификации через Web-сервис используется метод Authenticate (Метод Authenticate). В этом случае передаются параметры:

  • userName – логин;
  • password – пароль.

При проверке соответствия имени и пароля пользователя возвращается булевское значение: true – в случае успешной аутентификации, в противном случае false.

AnnulateService

Данный модуль предназначен для отправки запроса на аннуляцию путевки из сторонних приложений - Сервис для отправки запроса на аннуляцию путевки.

Метод SendAnnulate

Метод SendAnnulate предоставляет возможность отправлять заявку на аннуляцию путевки от имени on-line пользователя указанного в параметрах вызова метода - Метод SendAnnulate.

Сигнатура метода - string SendAnnulate(string code, string login, string password)

Параметры, принимаемые методом:

  • code - строковая переменная, представляющая собой код предлагаемой к аннуляции путевки;
  • login - строковая переменная, представляющая собой логин пользователя, от имени которого отправляется заявка на аннуляцию;
  • password - строковая переменная, представляющая собой пароль для доступа в систему on-line бронирования пользователя, от имени которого отправляется заявка на аннуляцию.

Возвращаемые значения - метод возвращает результат своей работы в виде строкового значения. Возможны следующие значения:

  • Вам запретили доступ к системе.
  • Вы ввели неправильный пароль \ Попробуйте еще раз. Обратите внимание, не включен ли у Вас Caps Lock \ и на каком языке Вы вводите пароль.
  • Договор с туроператором не заключен или его действие закончилось!
  • Путевка {0} не найдена!
  • Неверно задан пользователь!
  • У указанного пользователя нет прав на аннуляцию заданной путевки!
  • Запрос на аннулирование заявки {0} по стране {1} успешно отослан.
  • Ошибка. Не удалось отправить запрос.

WsAuthorization

Сервис поиска авиабилетов (TicketSearchService)

Данный модуль предназначен для поиска и подбора данных по рейсам, проверки их стоимости и наличия мест - Сервис поиска авиабилетов.

После установки «Сервис поиска авиабилетов» доступен по адресу: http://ip-адрес сервера Мастер-Веб/wsAviaSearch/TicketSerachService.asmx (обращение к сервису происходит из javascript с передачей параметров в формате JSON).

Метод GetArrivalCities

Метод возвращает все города/аэропорты прибытия для заданного города или страны вылета - Метод GetArrivalCities.

Метод GetBackFlightDates

Метод возвращает даты обратных перелётов - Метод GetBackFlightDates.

Метод GetDepartureCities

Метод возвращает все возможные города/аэропорты вылета - Метод GetDepartureCities.

Метод GetFlights

Метод возвращает перелёты по заданным параметрам - Метод GetFlights.

Метод GetStraightFlightDates

Метод возвращает даты прямых перелётов - Метод GetStraightFlightDates.

Пример вызова

callback: jsonp1277981564108
jsFlightSearchFilter: {"flightSearchParams":{"ctto":275, "cnfrom":460,"bdate":"2010-12-15"}}

Сервис по проверке наличия мест (CheckQuotesService)

Модуль «Сервис проверки наличия мест» предназначен как для проверки квот на одну конкретную услугу, так и на совокупность услуг - Сервис по проверке наличия мест.

Метод CheckQuotes

Метод позволяет осуществить проверку квот на совокупность услуг - Метод CheckQuotes

Сигнатура метода - public QuotaResult.Status CheckQuotes(List<Megatec.Travel.Entities.Service>services, DateTime tourDate, int tourDuration, int currentUserKey)

Параметры, принимаемые методом:

  • services - коллекция услуг, на которые необходимо проверить квоты
  • tourDate - дата начала тура
  • tourDuration - продолжительность тура
  • currentUserKey - ключ агентства в таблице партнеров

Распределенный поиск (ComplexTourService)

Модуль «Распределенный поиск» предназначен для отображения в едином поисковом модуле как своих, так и сторонних предложений. Модуль позволяет осуществлять поиск и бронирование туров от различных туроператоров в одном приложении ПК Мастер-Web - Распределенный поиск.

EncryptionService

FilterBindingService

HotelInfoService

CalculateReservation

ServiceProvider

FullTourInfoService