Web-сервисы: Сервис для получения списка турагентств
Версия статьи от 10.08.2016.
Поддерживаемые версии ПК «Мастер-Тур»: |
Содержание
Введение
Веб-сервис «Список турагенств» предназначен для вывода информации об активных турагенствах.
Установка
Для установки веб-сервиса «Список турагенств» необходимо скопировать папку из архива AgencyListService.zip в корневой каталог IIS (C:\inetpub\wwwroot по умолчанию), а затем преобразовать её в приложение в диспетчере служб IIS. В список активных протоколов и сайта, и приложения нужно добавить net.tcp:
В файле Web.config из директории приложения в секции appSettings прописывается подключение к базе данных, например:
<appSettings>
<add key="serviceServer" value="s94\grey"/>
<add key="serviceDatabase" value="Fade2009"/>
<add key="defaultUserName" value="Thersenight"/>
<add key="defaultPassword" value="dil8Iusae4m"/>
</appSettings>
После установки «Список турагенств» доступен по адресу http://server IP/AgencyListService/AgencyListService.svc.
Настройка
В таблице [SystemSettings] создаётся настройка SYSActivityDays, определяющая период активности агентства:
insert into [SystemSettings] ([SS_ParmName],[SS_ParmValue]) values ('SYSActivityDays','3')
- При наличии настройки SYSActivityDays с заданным периодом (n — целое число, дни) активными считаются агентства с признаком «Даёт клиентов», имеющие хотя бы одну бронь у туроператора, созданную в указанный временной промежуток (за n последних дней).
- При отсутствии настройки SYSActivityDays активными считаются все агентства из базы данных «Партнёры» (таблицы [Partners]), имеющие признак «Даёт клиентов».
Работа в системе
Веб-сервис «Список турагенств» включает в себя три метода:
- GetAgencies — метод возвращает активные турагенства по ключу города [CT_KEY] из таблицы [CityDictionary], например:
- GetCities — метод возвращает все города с активными турагенствами по ключу страны [CN_KEY] из таблицы [Country]. При значении параметра -1 будут выведены все города без фильтрации по стране:
- GetCountries — метод без параметров, возвращает все страны, в которых расположены активные турагенства:
<GetAgencies>
<MethodParameters>
<AgencyArray>
<AgencyArray0>
<Address isNull="true" />
<AnalysisDuration>0</AnalysisDuration>
<CityKey>63</CityKey>
<CountryKey>3</CountryKey>
<Email>adaptabiz@adaptabiz.com</Email>
<Fax>+33 616-8-915</Fax>
<FullName>Adaptabiz Co.</FullName>
<LegalAddress isNull="true" />
<Name>Adaptabiz</Name>
<Phone>+33 616-8-905</Phone>
<Representatives attr0="RepresentativeArray" isNull="false">
<RepresentativeArray0>
<Email>abiz@adaptabiz.com</Email>
<FullName>abiz</FullName>
<Phone>+33 616-8-925</Phone>
</RepresentativeArray0>
</Representatives>
<Url>adaptabiz.com</Url>
</AgencyArray0>
</AgencyArray>
</MethodParameters>
</GetAgencies>
<GetCities>
<MethodParameters>
<CityArray>
<CityArray0>
<Key>275</Key>
<Name>Арльберг</Name>
</CityArray0>
<CityArray1>
<Key>207</Key>
<Name>Берлин</Name>
</CityArray1>
<CityArray2>
<Key>63</Key>
<Name>Брюссель</Name>
</CityArray2>
<CityArray3>
<Key>35</Key>
<Name>Вена</Name>
</CityArray3>
<CityArray4>
<Key>403</Key>
<Name>Канильо</Name>
</CityArray4>
</CityArray>
</MethodParameters>
</GetCities>
<GetCountries>
<MethodParameters>
<CountryArray>
<CountryArray0>
<Key>90</Key>
<Name>Австрия</Name>
</CountryArray0>
<CountryArray1>
<Key>376</Key>
<Name>Андорра</Name>
</CountryArray1>
<CountryArray2>
<Key>3</Key>
<Name>Бельгия</Name>
</CountryArray2>
<CountryArray3>
<Key>40</Key>
<Name>Германия</Name>
</CountryArray3>
</CountryArray>
</MethodParameters>
</GetCountries>