Web-сервисы: Сервис для работы с документами по путевке

Материал из Megatec
Перейти к: навигация, поиск

Версия статьи от 1-04-2016.

Введение

Данный модуль предназначен для выгрузки отчетов и файлов, прикрепленных к путевке. Файлы можно просматривать и распечатывать.

Установка

Для установки web-сервиса нужно создать отдельную директорию, например, ReservationDocuments (далее в примерах будет использоваться данное название каталога) в корневом каталоге IIS (по умолчанию c:/inetpub/wwwroot) и выложить туда распакованные файлы из архива ws-reservationDocuments-9.2.XX.XXXXX.zip. В управлении IIS необходимо создать виртуальный каталог для папки ReservationDocuments.

Создание виртуального каталога

По умолчанию корневым каталогом IIS является C:/Inetpub/wwwroot. Для создания виртуального каталога для приложения находящегося в этом каталоге нужно выполнить следующие действия:

  • 1. Зайти в Пуск (Start) – Панель управления (Control Panel) – Администрирование (Administrative Tools)


857.PNG

  • 2. Запустить Internet Information Services (IIS) Manager


858.PNG

  • 3. В открывшемся дереве каталогов выбрать сайты (Web Sites) – Default Web Site (либо другой сайт, на который планируется установить приложение). В открывшемся списке найти папку, для которой нужно создать виртуальный каталог, кликнуть по ней правой кнопкой мыши и выбрать пункт «Преобразовать в приложение».


859.PNG

Подключение к базе данных ПК «Мастер-Тур»

В файле web.config, расположенном в папке ReservationDocuments, в которую установлен web-сервис «Сервис работы с документами по путевке», пропишите необходимые параметры подключения (курсивом выделены значения, которые необходимо ввести). Строка подключения к базе данных ПК «Мастер-Тур»:

<add key = "connectionString" value = "Data Source=ip-адрес сервера базы данных ПК Мастер-тур;
Initial Catalog=название базы данных ПК Мастер-тур;User ID=логин пользователя ПК Мастер-тур;Password=пароль пользователя ПК Мастер-тур"/>

Базовый алгоритм работы с сервисом

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

  • Во-первых, необходимо получить список доступных для печати документов по путевке. Для этого нужно вызывать метод получения информации о возможных выгрузках. В ответе сервиса придет список описаний документов, в каждом из которых будет указан тип документа: файл или отчет.
  • Для выгрузки какого-либо документа необходимо вызвать соответствующий его типу метод. Для файла - метод получения одного файла, для отчета - метод получения одного отчета. Входными параметрами данных методов являются данные, полученные при вызове метода получения информации о доступных выгрузках, а выходными - файл или отчет.

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

Информация о возможных выгрузках

Метод доступен GET запросом по пути: Адрес сервиса/Documents/Код путевки.
Например, http://localhost/ReservationDocuments/Documents/EN50915999, где:

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

  • Код путевки

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

Набор описаний документов (тег <DocumentDescription>)

  • Тип документа (файл или отчет, тег <Type>)
  • Название документа (тег <Name>)
  • Код документа (используется только для отчетов, тег <Code>)
  • GUID документа (тег <GUID>)

Пример ответа метода:

 <ArrayOfDocumentDescription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/0/Megatec.Web.Services.ReservationDocuments.Models">
  <DocumentDescription>
     <Code>ACCNTFL</Code>
     <GUID>A5FCA95D-CD56-4A79-A4CF-F10C50FDC2DB</GUID>
     <Name>ФЛ Счет-Подтверждение Клуб</Name>
     <Type>Report</Type>
  </DocumentDescription>
  <DocumentDescription>
     <Code>ACCNT</Code>
     <GUID>730AF135-E879-439D-B2D6-0A8AF619BB33</GUID>
     <Name>Счет-Подтверждение Клуб</Name>
     <Type>Report</Type>
  </DocumentDescription>
  <DocumentDescription>
    
     <GUID>f6f87c77-7177-4648-b983-4b1f66767497</GUID>
     <Name>Счет-подтверждение.pdf</Name>
     <Type>File</Type>
  </DocumentDescription>
  <DocumentDescription>
    
     <GUID>61075356-4e3d-4a8d-87d7-1f4853f7916d</GUID>
     <Name>Тестовый_файл.docx</Name>
     <Type>File</Type>
  </DocumentDescription>
 </ArrayOfDocumentDescription>

Получение одного файла

Метод выгрузки файла доступен GET запросом по пути: Адрес сервиса/Documents/file/Guid файла.
Например, http://localhost/ReservationDocuments/Documents/file/61075356-4e3d-4a8d-87d7-1f4853f7916d, где:

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

  • GUID файла

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

  • Выходной поток с файлом

Получение одного отчета

Метод доступен GET запросом по пути: Адрес сервиса/Documents/report/Код путевки/GUID отчета/Код отчета.
Например, http://localhost/ReservationDocuments/Documents/report/EN50915999/730AF135-E879-439D-B2D6-0A8AF619BB33/ACCNT, где:

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

  • Код путевки
  • GUID отчета
  • Код отчета

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

  • Выходной поток с файлом