Сторінка 6 із 8
Інтеграція із зовнішніми обліковими системами через REST API
Ми трохи змінили налаштування для такої інтеграції. Тепер це налаштувати легше, а працює - швидше та безпечніше.
Основні зміни:
- Для роботи інтеграції тепер не потрібно відкривати на сервері порт 8005. З'єднання відбувається через основний порт, який використовує програма (зазвичай, це порт 8000).
- Для роботи інтеграції тепер не потрібно запускати службу DocDream "AccountingIntergrationService". Можете її відключити.
- Для роботи інтеграції тепер обов'язково потрібний спеціальний токен (як його отримати - показано на анімації нижче).
- З'єднання між DocDream та зовнішньою обліковою системою тепер відбувається через https (раніше - через http).
Дана стаття носить чисто технічний характер, краще передайте її на ознайомлення тому, хто налаштовує (або буде налаштовувати) у вас інтеграцію DocDream із бухгалтерськими програмами.
Якщо такого "інтегратора" у вас немає, а інтеграція потрібна - напишіть нам заявку на портал технічної підтримки, ми порекомендуємо вам виконавців для цієї роботи, які вже робили це в минулому в інших медичних центрах, а отже, зможуть повторити і у вас.
Адреса сервісу
https://сервер:8000/integration/accounting
Тип сервісу
REST (HTTP + JSON)
Авторизація
Токен, задається в налаштуваннях службового користувача "accounting" (див. анімацію нижче). Цей токен має передаватися в HTTP-заголовку Authorization:
Authorization: Bearer [токен]
Результат
Всі методи сервісу повертають результат запиту з наступними полями:
- status
- Визначає успішність операції
- Тип: int
- Розшифровка: 1 - успіх, інші значення - помилка
- statusMessage
- Містить повідомлення про помилку, якщо операція невдала
- Тип: string
- statusDetails
- Містить деталізацію помилки, якщо операція невдала
- Тип: string[]
- serverProcessingTime
- Час виконання запиту сервером
- Тип: int
- час вимірюється в мілісекундах; якщо вимірювання не проводилося, то повертається значення "-1"
- value
- Містить результат запиту (якщо запит успішний)
- Тип: рядки результатів
- Поля результатів описуються для кожного методу окремо.
В описах методів використовуються типи даних, які мають наступне значення:
- string - рядок тексту; може бути null
- string[] - масив (перелік) рядків, в JSON має вигляд [ "строка 1", "строка 2", "строка 3" ]
- int - знакове ціле число (32 біта)
- decimal - десятичне число з фіксованою крапкою; дозволяє арифметику без втрати точності
- dateTime - дата та час у форматі "yyyy-MM-dd HH:mm:ss", наприклад, "2020-05-17 19:45:16"
- date - дата у форматі "yyyy-MM-dd", наприклад, "2020-05-17".