Web-сервисы: Сервис для работы с документами по путевке — различия между версиями
[досмотренная версия] | [непроверенная версия] |
Porunova (обсуждение | вклад) |
Porunova (обсуждение | вклад) |
||
Строка 40: | Строка 40: | ||
* Код путевки | * Код путевки | ||
====Выходные параметры==== | ====Выходные параметры==== | ||
− | * Тип документа (файл или отчет) | + | Набор описаний документов (тег <DocumentDescription>) |
− | * Название документа | + | * Тип документа (файл или отчет, тег <Type>) |
− | * Код документа (используется только для отчетов) | + | * Название документа (тег <Name>) |
− | * GUID документа | + | * Код документа (используется только для отчетов, тег <nowiki><Code></nowiki>) |
+ | * GUID документа (тег <GUID>) | ||
+ | Пример ответа метода: <br /> | ||
+ | <ArrayOfDocumentDescription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/0/Megatec.Web.Services.ReservationDocuments.Models"> | ||
+ | <DocumentDescription> | ||
+ | <nowiki><Code></nowiki>ACCNTFL<nowiki></Code></nowiki> | ||
+ | <GUID>A5FCA95D-CD56-4A79-A4CF-F10C50FDC2DB</GUID> | ||
+ | <Name>ФЛ Счет-Подтверждение Клуб</Name> | ||
+ | <Type>Report</Type> | ||
+ | </DocumentDescription> | ||
+ | <DocumentDescription> | ||
+ | <nowiki><Code></nowiki>ACCNT<nowiki></Code></nowiki> | ||
+ | <GUID>730AF135-E879-439D-B2D6-0A8AF619BB33</GUID> | ||
+ | <Name>Счет-Подтверждение Клуб</Name> | ||
+ | <Type>Report</Type> | ||
+ | </DocumentDescription> | ||
+ | <DocumentDescription> | ||
+ | <Code/> | ||
+ | <GUID>f6f87c77-7177-4648-b983-4b1f66767497</GUID> | ||
+ | <Name>Счет-подтверждение.pdf</Name> | ||
+ | <Type>File</Type> | ||
+ | </DocumentDescription> | ||
+ | <DocumentDescription> | ||
+ | <Code/> | ||
+ | <GUID>61075356-4e3d-4a8d-87d7-1f4853f7916d</GUID> | ||
+ | <Name>Тестовый_файл.docx</Name> | ||
+ | <Type>File</Type> | ||
+ | </DocumentDescription> | ||
+ | </ArrayOfDocumentDescription> | ||
===Получение одного файла=== | ===Получение одного файла=== | ||
Метод выгрузки файла доступен GET запросом по пути: Адрес сервиса/Documents/file/Guid файла. <br /> | Метод выгрузки файла доступен GET запросом по пути: Адрес сервиса/Documents/file/Guid файла. <br /> | ||
Например, http://localhost/ReservationDocuments/Documents/file/E999D999-AF8C-999C-958F-E0F2C2E4E999, где: | Например, http://localhost/ReservationDocuments/Documents/file/E999D999-AF8C-999C-958F-E0F2C2E4E999, где: | ||
* http://localhost/ReservationDocuments - адрес сервиса | * http://localhost/ReservationDocuments - адрес сервиса | ||
− | * E999D999-AF8C-999C-958F-E0F2C2E4E999 - GUID файла | + | * E999D999-AF8C-999C-958F-E0F2C2E4E999 - GUID файла, полученный из ответа [[Мастер-Web:Дополнительный модуль Сервис для работы с документами по путевке#Информация о возможных выгрузках|метода получения информации о возможных выгрузках]] (тег <GUID>) |
====Входные параметры==== | ====Входные параметры==== | ||
* GUID файла | * GUID файла | ||
Строка 56: | Строка 84: | ||
===Получение одного отчета=== | ===Получение одного отчета=== | ||
Метод доступен GET запросом по пути: Адрес сервиса/Documents/report/Код путевки/GUID отчета/Код отчета. <br /> | Метод доступен GET запросом по пути: Адрес сервиса/Documents/report/Код путевки/GUID отчета/Код отчета. <br /> | ||
− | Например, http://localhost/ReservationDocuments/Documents/report/AU50708002/2DF39999-E99F-480F-B870-364AA999F0FB/ | + | Например, http://localhost/ReservationDocuments/Documents/report/AU50708002/2DF39999-E99F-480F-B870-364AA999F0FB/ACCNT, где: |
* http://localhost/ReservationDocuments - адрес сервиса | * http://localhost/ReservationDocuments - адрес сервиса | ||
* AU50708002 - код путевки | * AU50708002 - код путевки | ||
− | * 2DF39999-E99F-480F-B870-364AA999F0FB - GUID отчета | + | * 2DF39999-E99F-480F-B870-364AA999F0FB - GUID отчета, полученный из ответа [[Мастер-Web:Дополнительный модуль Сервис для работы с документами по путевке#Информация о возможных выгрузках|метода получения информации о возможных выгрузках]] (тег <GUID>) |
− | * | + | * ACCNT - код отчета, полученный из ответа [[Мастер-Web:Дополнительный модуль Сервис для работы с документами по путевке#Информация о возможных выгрузках|метода получения информации о возможных выгрузках]] (тег <nowiki><Code></nowiki>) |
====Входные параметры==== | ====Входные параметры==== | ||
* Код путевки | * Код путевки |
Версия 13:35, 18 ноября 2015
Версия статьи от 18-11-2015.
Введение
Данный модуль предназначен для отображения и выгрузки отчетов и файлов, прикрепленных к путевке. Файлы можно просматривать и распечатывать.
Установка
Для установки 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)
- 2. Запустить Internet Information Services (IIS) Manager
- 3. В открывшемся дереве каталогов выбрать сайты (Web Sites) – Default Web Site (либо другой сайт, на который планируется установить приложение). В открывшемся списке найти папку, для которой нужно создать виртуальный каталог, кликнуть по ней правой кнопкой мыши и выбрать пункт «Преобразовать в приложение».
Подключение к базе данных ПК «Мастер-Тур»
В файле web.config, расположенном в папке ReservationDocuments, в которую установлен web-сервис «Сервис работы с документами по путевке», пропишите необходимые параметры подключения (курсивом выделены значения, которые необходимо ввести). Строка подключения к базе данных ПК «Мастер-Тур»:
<add key = "connectionString" value = "Data Source=ip-адрес сервера базы данных ПК Мастер-тур;
Initial Catalog=название базы данных ПК Мастер-тур;User ID=логин пользователя ПК Мастер-тур;Password=пароль пользователя ПК Мастер-тур"/>
Базовый алгоритм работы с сервисом
Данный сервис позволяет получить список доступных для печати документов, а также распечатать их по отдельности. Для этого, сервис предоставляет несколько методов.
- Во-первых, необходимо получить список доступных для печати документов по путевке. Для этого нужно вызывать метод получения информации о возможных выгрузках. В ответе сервиса придет список описаний документов, в каждом из которых будет указан тип документа: файл или отчет.
- Для выгрузки какого-либо документа необходимо вызвать соответствующий его типу метод. Для файла - метод получения одного файла, для отчета - метод получения одного отчета. Входными параметрами данных методов являются данные, полученные при вызове метода получения информации о доступных выгрузках, а выходными - файл или отчет.
Методы web-сервиса
Информация о возможных выгрузках
Метод доступен GET запросом по пути: Адрес сервиса/Documents/Код путевки.
Например, http://localhost/ReservationDocuments/Documents/EN50915999, где:
- http://localhost/ReservationDocuments - адрес сервиса
- 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/E999D999-AF8C-999C-958F-E0F2C2E4E999, где:
- http://localhost/ReservationDocuments - адрес сервиса
- E999D999-AF8C-999C-958F-E0F2C2E4E999 - GUID файла, полученный из ответа метода получения информации о возможных выгрузках (тег <GUID>)
Входные параметры
- GUID файла
Выходные параметры
- Выходной поток с файлом
Получение одного отчета
Метод доступен GET запросом по пути: Адрес сервиса/Documents/report/Код путевки/GUID отчета/Код отчета.
Например, http://localhost/ReservationDocuments/Documents/report/AU50708002/2DF39999-E99F-480F-B870-364AA999F0FB/ACCNT, где:
- http://localhost/ReservationDocuments - адрес сервиса
- AU50708002 - код путевки
- 2DF39999-E99F-480F-B870-364AA999F0FB - GUID отчета, полученный из ответа метода получения информации о возможных выгрузках (тег <GUID>)
- ACCNT - код отчета, полученный из ответа метода получения информации о возможных выгрузках (тег <Code>)
Входные параметры
- Код путевки
- GUID отчета
- Код отчета
Выходные параметры
- Выходной поток с файлом