ЕСОЗ - публічна документація
Get approvals_UA
Ціль
Даний веб-сервіс створений для отримання списку апрувалів пацієнта профільтрований по параметрам пошуку.
Специфікація
Авторизація
Перевірити валідність токену доступу
В разі помилки валідації повернути код (401, 'Invalid access token')
Перевірити, що токен дійсний
в разі помилки - повернути код (401, 'Invalid access token')
Перевірити скоупи користувача на можливість виконання запрошеної дії (scope = 'approval:read')
Повернути (403, 'Your scope does not allow to access this resource. Missing allowances: approval:read') в разі некоректних скоупів/scope(s)
Перевірити пацієнта
Отримати ідентифікатор пацієнта з URL
Перевірити, що вона існує в БД
Повернути в разі помилки 404 ('Person is not found')
Перевірити апрувал
Отримати ідентифікатор апрувала з URL
Перевірити, що вона існує в БД
Повернути 404 ('not found') в разі помилки
Перевірити користувача
Отримати user_id з токену.
Перевірити, що користувач має активну декларацію з пацієнтом з URL (може отримати всі апрувал) або що апрувал наданий користувачу (може отримати власний апрувал):
Повернути 200 з пустим масивом в разі, якщо співробітник не має активної декларації з пацієнтом або якщо апрувал наданий користувачу
Логіка сервісу
Сервіс повертає всі апрували пов'язані з пацієнтом профільтровані по пошуковим параметрам:
Отримати всі апрували по patient_id з колекції апрувалів (MongoDB)
Профільтрувати список вище по наданим пошуковим параметрам
Відобразити відповідь у відповідності до специфікації.
ЕСОЗ - публічна документація