Мастер-Web:Установка и настройка — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[непроверенная версия][непроверенная версия]
</
(Ошибка ‘Padding is invalid and cannot be removed’)
Строка 12 995: Строка 12 995:
 
   
 
   
 
==Web-сервисы==
 
==Web-сервисы==
===Сервис по работе с курсами валют (Rates.asmx)===
+
Возможна установка следующих веб-сервисов:
 
+
* [[Мастер-Web:Дополнительный модуль Сервис по работе с курсами валют|Сервис по работе с курсами валют]]
Данный web-сервис предназначен для работы с курсами валют.
+
* [[Мастер-Web:Дополнительный модуль Поисковый сервис|Поисковый сервис]]
Для корректной работы сервиса необходимо, чтобы были заполнены справочники «Курс национальной валюты» и «Реальные кросс-курсы валют».
+
* [[Мастер-Web:Дополнительный модуль Сервис по работе с заявками|Сервис по работе с заявками]]
Результаты возвращаются в виде xml-файлов.
+
* [[Мастер-Web:Дополнительный модуль Сервис для отправки запроса на аннуляцию путевки|Сервис для отправки запроса на аннуляцию путевки]]
===Exchange===
+
* [[Мастер-Web:Дополнительный модуль Сервис для шифрования строковых значений|Сервис для шифрования строковых значений]]
Exchange предназначен для пересчета стоимости из одной валюты в другую.
 
<BR>
 
[[Файл:630.PNG]]<BR>
 
Для получения результата необходимо передать следующие значения:
 
* «cost» - сумма или стоимость, которую нужно пересчитать
 
* «rateCodeFrom» - код валюты, из которой нужно произвести конвертацию
 
* «rateCodeTo» - код валюты, в которую необходимо конвертировать стоимость
 
* «exchangeDate» - дата, на которую необходимо взять курсы валют.
 
===GetCourse ===
 
GetCourse предназначен для получения кросс-курса валют.
 
<BR>
 
[[Файл:631.PNG]]<BR>
 
Для получения результата необходимо передать следующие значения:
 
* «rateCodeFrom» - код валюты, кросс-курс которой нужно вывести
 
* «rateCodeTo» - код валюты 2
 
* «exchangeDate» - дата, на которую необходимо взять курсы валют.
 
===GetNationalCourse===
 
GetNationalCourse предназначен для получения курса валюты.
 
<BR>
 
[[Файл:632.PNG]]<BR>
 
 
Для получения результата необходимо передать следующие значения:
 
* «rateCode - код валюты, курс которой нужно получить
 
* «exchangeDate» - дата, на которую необходимо взять курс валют.
 
 
 
===GetNationalCourseToday===
 
GetNationalCourseToday предназначен для получения курса валюты на текущую дату.
 
<BR>
 
[[Файл:633.PNG]]<BR>
 
Для получения результата необходимо передать следующие значения:
 
* «rateCode - код валюты, курс которой нужно получить
 
 
 
===GetNationalRateCode===
 
GetNationalRateCode предназначен для получения кода национальной валюты.
 
<BR>
 
[[Файл:634.PNG]]<BR>
 
 
 
Данный метод не принимает параметров.
 
==Поисковый сервис (Search.asmx)==
 
Данный модуль предназначен для осуществления поиска и подбора туров из внешних приложений.
 
 
 
===Описание класса SearchFilter ===
 
 
 
    /// <summary>
 
    /// Класс, описывающий параметры подбора тура
 
    /// </summary>
 
    public class SearchParams
 
    {
 
        /// <summary>
 
        /// Идентификатор агенства, от имени которого производится поиск
 
        /// </summary>
 
        [XmlAttribute("Agent")]
 
        public int AgentKey = 0;
 
 
 
        /// <summary>
 
        /// Разделять квоты на агентские/неагентские или игнорировать агентские квоты.
 
        /// Настройка web.config: "checkAgentQuotesEnabled".
 
        /// Значение по умолчанию: true.
 
        /// </summary>
 
        [XmlAttribute("CheckAQ")]
 
        public bool CheckAgentQuota = true;
 
 
 
        /// <summary>
 
        /// Проверять общую квоту, если агентская закончилась.
 
        /// Настройка web.config: "checkAgentAndCommonQuote".
 
        /// Значение по умолчанию: true.
 
        /// </summary>
 
        [XmlAttribute("CheckCQ")]
 
        public bool CheckCommonQuota = true;
 
 
 
        /// <summary>
 
        /// При подборе перелета поиск производится в том же пакете цен, что и перелет в обсчитанном туре,
 
        /// иначе цены в расчет на принимается, а используется только расписание перелетов.
 
        /// Используется только, если FindFlight = true.
 
        /// Настройка web.config: "checkFlightPacket".
 
        /// Значение по умолчанию: true.
 
        /// </summary>
 
        [XmlAttribute("CheckFP")]
 
        public bool CheckFlightPacket = true;
 
 
 
        /// <summary>
 
        /// Проверять квоты без продолжительности после того, как закончатся квоты на продолжительность.
 
        /// Настройка web.config: "checkNoLongQuota".
 
        /// Значение по умолчанию: true
 
        /// </summary>
 
        [XmlAttribute("CheckNLQ")]
 
        public bool CheckNoLongQuota = true;
 
 
 
        /// <summary>
 
        /// Проверять квоты от всех различных партнеров.
 
        /// Настройка web.config: "checkAllPartnersQuota".
 
        /// Значение по умолчанию: false
 
        /// </summary>
 
        [XmlAttribute("CheckAPQ")]
 
        public bool CheckAllPartnersQuota = true;
 
 
 
        /// <summary>
 
        /// Результат возвращаемый, если у квоты истек релиз-период.
 
        /// Настройка web.config: "expiredReleaseQuoteResult".
 
        /// Значение по умолчанию: QuotaResult.Status.Request.
 
        /// </summary>
 
        [XmlAttribute("ExpRelRes")]
 
        public QuotaResult.Status ExpiredReleaseResult = QuotaResult.Status.Request;
 
 
 
        /// <summary>
 
        /// Подбирать авиаперелет по туру, на который есть свободные места.
 
        /// </summary>
 
        [XmlAttribute("FindFlight")]
 
        public bool FindFlight = true;
 
 
 
        /// <summary>
 
        /// Список классов перелета (ключи бизнес- и эконом-класса)
 
        /// </summary>
 
        [XmlAttribute("FlightGroups")]
 
        public string FlightGroups = String.Empty;
 
 
 
        /// <summary>
 
        /// Использовать таблицу TP_Tours как источник данных, иначе - таблицу tbl_TurList
 
        /// Настройка web.config: "quotedDynamicPriceTour".
 
        /// Значение по умолчанию: true.
 
        /// </summary>
 
        [XmlAttribute("IsPT")]
 
        public bool IsPriceTour = true;
 
 
 
        /// <summary>
 
        /// Результат возвращаемый при наличии квоты, но отсутствии свободных мест.
 
        /// Настройка web.config: "noPlacesQuoteResult".
 
        /// Значение по умолчанию: QuotaResult.Status.No.
 
        /// </summary>
 
        [XmlAttribute("NPResult")]
 
        public QuotaResult.Status NoPlacesResult = QuotaResult.Status.No;
 
 
 
        /// <summary>
 
        /// Тип отбора
 
        /// </summary>
 
        [XmlAttribute("PagingType")]
 
        public short PagingType = Megatec.Search.PagingType.Simple;
 
 
 
        /// <summary>
 
        /// Возращать ли поле, содержащее список ключей классов услуг по туру
 
        /// </summary>
 
        [XmlAttribute("Services")]
 
        public bool Services = false;
 
 
 
        /// <summary>
 
        /// Отображать статус "Запрос", если релиз-период = 0, независимо от количества свободных мест.
 
        /// Настройка web.config: "setRequestIfReleaseIsZero".
 
        /// Значение по умолчанию: false.
 
        /// </summary>
 
        [XmlAttribute("SetRequestOnRelease")]
 
        public bool SetRequestOnRelease = false;
 
 
 
        /// <summary>
 
        /// Параметры сортировки (выражение ORDER BY)
 
        /// </summary>
 
        [XmlAttribute("Sort")]
 
        public string Sort = string.Empty;
 
 
 
        /// <summary>
 
        /// Производить сортировку на сервере БД или на клиенте
 
        /// </summary>
 
        [XmlAttribute("SortInDB")]
 
        public bool SortInDB = true;
 
 
 
        /// <summary>
 
        /// Интерфейс, реализующий функцию межвалютной конвертации цен по туру
 
        /// </summary>
 
        [XmlIgnore]
 
        public Megatec.Types.IMoneyConverter MoneyConverter = null;
 
    }
 
 
 
===Описание класса SearchParams===
 
 
 
    /// <summary>
 
    /// Класс, описывающий параметры подбора тура
 
    /// </summary>
 
    public class SearchParams
 
    {
 
        /// <summary>
 
        /// Идентификатор агенства, от имени которого производится поиск
 
        /// </summary>
 
        [XmlAttribute("Agent")]
 
        public int AgentKey = 0;
 
 
 
        /// <summary>
 
        /// Разделять квоты на агентские/неагентские или игнорировать агентские квоты.
 
        /// Настройка web.config: "checkAgentQuotesEnabled".
 
        /// Значение по умолчанию: true.
 
        /// </summary>
 
        [XmlAttribute("CheckAQ")]
 
        public bool CheckAgentQuota = true;
 
 
 
        /// <summary>
 
        /// Проверять общую квоту, если агентская закончилась.
 
        /// Настройка web.config: "checkAgentAndCommonQuote".
 
        /// Значение по умолчанию: true.
 
        /// </summary>
 
        [XmlAttribute("CheckCQ")]
 
        public bool CheckCommonQuota = true;
 
 
 
        /// <summary>
 
        /// При подборе перелета поиск производится в том же пакете цен, что и перелет в обсчитанном туре,
 
        /// иначе цены в расчет на принимается, а используется только расписание перелетов.
 
        /// Используется только, если FindFlight = true.
 
        /// Настройка web.config: "checkFlightPacket".
 
        /// Значение по умолчанию: true.
 
        /// </summary>
 
        [XmlAttribute("CheckFP")]
 
        public bool CheckFlightPacket = true;
 
 
 
        /// <summary>
 
        /// Проверять квоты без продолжительности после того, как закончатся квоты на продолжительность.
 
        /// Настройка web.config: "checkNoLongQuota".
 
        /// Значение по умолчанию: true
 
        /// </summary>
 
        [XmlAttribute("CheckNLQ")]
 
        public bool CheckNoLongQuota = true;
 
 
 
        /// <summary>
 
        /// Проверять квоты от всех различных партнеров.
 
        /// Настройка web.config: "checkAllPartnersQuota".
 
        /// Значение по умолчанию: false
 
        /// </summary>
 
        [XmlAttribute("CheckAPQ")]
 
        public bool CheckAllPartnersQuota = true;
 
 
 
        /// <summary>
 
        /// Результат возвращаемый, если у квоты истек релиз-период.
 
        /// Настройка web.config: "expiredReleaseQuoteResult".
 
        /// Значение по умолчанию: QuotaResult.Status.Request.
 
        /// </summary>
 
        [XmlAttribute("ExpRelRes")]
 
        public QuotaResult.Status ExpiredReleaseResult = QuotaResult.Status.Request;
 
 
 
        /// <summary>
 
        /// Подбирать авиаперелет по туру, на который есть свободные места.
 
        /// </summary>
 
        [XmlAttribute("FindFlight")]
 
        public bool FindFlight = true;
 
 
 
        /// <summary>
 
        /// Список классов перелета (ключи бизнес- и эконом-класса)
 
        /// </summary>
 
        [XmlAttribute("FlightGroups")]
 
        public string FlightGroups = String.Empty;
 
 
 
        /// <summary>
 
        /// Использовать таблицу TP_Tours как источник данных, иначе - таблицу tbl_TurList
 
        /// Настройка web.config: "quotedDynamicPriceTour".
 
        /// Значение по умолчанию: true.
 
        /// </summary>
 
        [XmlAttribute("IsPT")]
 
        public bool IsPriceTour = true;
 
 
 
        /// <summary>
 
        /// Результат возвращаемый при наличии квоты, но отсутствии свободных мест.
 
        /// Настройка web.config: "noPlacesQuoteResult".
 
        /// Значение по умолчанию: QuotaResult.Status.No.
 
        /// </summary>
 
        [XmlAttribute("NPResult")]
 
        public QuotaResult.Status NoPlacesResult = QuotaResult.Status.No;
 
 
 
        /// <summary>
 
        /// Тип отбора
 
        /// </summary>
 
        [XmlAttribute("PagingType")]
 
        public short PagingType = Megatec.Search.PagingType.Simple;
 
 
 
        /// <summary>
 
        /// Возращать ли поле, содержащее список ключей классов услуг по туру
 
        /// </summary>
 
        [XmlAttribute("Services")]
 
        public bool Services = false;
 
 
 
        /// <summary>
 
        /// Отображать статус "Запрос", если релиз-период = 0, независимо от количества свободных мест.
 
        /// Настройка web.config: "setRequestIfReleaseIsZero".
 
        /// Значение по умолчанию: false.
 
        /// </summary>
 
        [XmlAttribute("SetRequestOnRelease")]
 
        public bool SetRequestOnRelease = false;
 
 
 
        /// <summary>
 
        /// Параметры сортировки (выражение ORDER BY)
 
        /// </summary>
 
        [XmlAttribute("Sort")]
 
        public string Sort = string.Empty;
 
 
 
        /// <summary>
 
        /// Производить сортировку на сервере БД или на клиенте
 
        /// </summary>
 
        [XmlAttribute("SortInDB")]
 
        public bool SortInDB = true;
 
 
 
        /// <summary>
 
        /// Интерфейс, реализующий функцию межвалютной конвертации цен по туру
 
        /// </summary>
 
        [XmlIgnore]
 
        public Megatec.Types.IMoneyConverter MoneyConverter = null;
 
    }
 
 
 
===Описание класса SearchResult===
 
 
 
    [XmlInclude(typeof(SearchResultItem))]
 
    public class SearchResult
 
    {
 
        /// <summary>
 
        /// Общее количество найденных записей
 
        /// </summary>
 
        [XmlAttribute("Total")]
 
        public int TotalCount
 
 
 
        /// <summary>
 
        /// Количество отобранных записей
 
        /// </summary>
 
        [XmlAttribute("Parsed")]
 
        public int ParsedCount
 
 
 
        /// <summary>
 
        /// Не используется
 
        /// </summary>
 
        [XmlAttribute("Step")]
 
        public double DynamicPriceStepValue
 
 
 
        /// <summary>
 
        /// Коллекция найденных результатов
 
        /// </summary>
 
        [XmlElement("SearchResultItem")]
 
        public List<SearchResultItem> Items
 
    }
 
 
 
===Описание класса SearchResultItem===
 
 
 
    public class SearchResultItem: IRoomDescription
 
    {
 
        /// <summary>
 
        /// Количество основных мест
 
        /// </summary>
 
        [XmlAttribute]
 
        public int MainPlaces
 
 
 
        /// <summary>
 
        /// Количество неосновных мест
 
        /// </summary>
 
        [XmlAttribute]
 
        public int AddPlaces
 
 
 
        /// <summary>
 
        /// Основное или неосновное размещение
 
        /// </summary>
 
        [XmlAttribute]
 
        public bool IsMain
 
 
 
        /// <summary>
 
        /// Дата, до которой актуален тур
 
        /// </summary>
 
        [XmlAttribute]
 
        public DateTime TourValid
 
 
 
        /// <summary>
 
        /// Дата создания тура
 
        /// </summary>
 
        [XmlAttribute]
 
        public DateTime TourCreated
 
 
 
        /// <summary>
 
        /// Дата заезда
 
        /// </summary>
 
        [XmlAttribute]
 
        public DateTime TourDate
 
 
 
        /// <summary>
 
        /// Продолжительность тура в днях
 
        /// </summary>
 
        [XmlAttribute]
 
        public int Days
 
 
 
        /// <summary>
 
        /// Количество ночей проживания в туре
 
        /// </summary>
 
        [XmlAttribute]
 
        public int Nights
 
 
 
        /// <summary>
 
        /// Ключ страны
 
        /// </summary>
 
        [XmlAttribute]
 
        public int CountryKey
 
 
 
        /// <summary>
 
        /// Ключ города отправления
 
        /// </summary>
 
        [XmlAttribute]
 
        public int CityFromKey
 
 
 
        /// <summary>
 
        /// Ключ города прилета
 
        /// </summary>
 
        [XmlAttribute]
 
        public int CityToKey
 
 
 
        /// <summary>
 
        /// Ключ аэропорта вылета
 
        /// </summary>
 
        [XmlAttribute]
 
        public int AirportFromKey
 
 
 
        /// <summary>
 
        /// Ключ аэропорта прилета
 
        /// </summary>
 
        [XmlAttribute]
 
        public int AirportToKey
 
 
 
        /// <summary>
 
        /// Ключ расчитанного тура (TP_Tours)
 
        /// </summary>
 
        [XmlAttribute]
 
        public int TourKey
 
 
 
        /// <summary>
 
        /// Ключ типа тура (TipTur)
 
        /// </summary>
 
        [XmlAttribute]
 
        public int TourTypeKey
 
 
 
        /// <summary>
 
        /// Ключ тура из конструктора туров (turList)
 
        /// </summary>
 
        [XmlAttribute]
 
        public int TurListKey
 
 
 
        /// <summary>
 
        /// Ключ расчитанного варианта (TP_Lists)
 
        /// </summary>
 
        [XmlAttribute]
 
        public int PriceListKey