ЕСОЗ - публічна документація
Get Clinical impression by search params_UA
Ціль
Даний метод дозволяє отримати перелік клінічних оцінок для вказаного пацієнта, профільтрованих згідно пошукових параметрів
Специфікація
Авторизація
Перевірити валідність токену доступу
повернути (401, 'unauthorized') в разі неуспішної валідації
Перевірити, що токен дійсний
в разі помилки - повернути (401, 'unauthorized')
Перевірити скоупи користувача на можливість виконання даної дії (scope = 'clinical_impression:read')
повернути (403, 'invalid scopes”) в разі невалідних скоупів
Достур до ресурсу також регулюється ABAC module
Валідації
Перевірити пацієнта
Отримати ідентифікатор пацієнта з URL
Перевірити, що пацієнт існує в DB
Повернути 404 ('not found') в разі помилки
Перевірити користувача
Отримати з токену user_id.
Перевірити, що користувач є активним та підтвердженим співробітником з юридичної особи (token) що:
має активну декларацію з пацієнтом
має доступ до епізоду пацієнта (створено в поточному MSP або згідно апрувалу на ресурс епізоду)
Сервісна логіка
Сервіс повертає всі клінічні оцінки, пов'язані з пацієнтом та профільтровані по пошуковим параметрам:
Отримати всі клінічні оцінки по patient_id з колекції clinical_impressions (MongoDB)
Профільрувати отриманий перелік по вказаним пошуковим параметрам
Відобразити відповідь згідно специфікації зі знайденими сутностями клінічної оцінки.
ЕСОЗ - публічна документація