ЕСОЗ - публічна документація

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »

Мета

Даний веб-сервіс (WS) розроблено для отримання деталей запиту на персону.

Специфікація

Apiary

Авторизація

  • Перевірити валідність токену доступу

    • Повернути (401, 'Invalid access token') в разі неуспішних перевірок

  • Перевірити, що токен дійсний

    • в разі помилки - повернути (401, 'Invalid access token')

  • Перевірити скоупи користувача на можливість виконання даної дії (scope = 'person_request:details_pis')

    • Повернути (403, 'Your scope does not allow to access this resource. Missing allowances: person_request:details_pis') в разі невалідних скоупів

  • Перевірити, що токен містисть person_id

    • в разі помилки - повернути (401, 'Invalid access token')

Перевірити персону

  • Отримати person_id з токену (x-person-id хедер)

  • Перевірити, що статус персони є активний (status = ‘active' & is_active = 'true’)

    • в разі помилки - повернути 404 ('not found')

Перевірити запит на персону

  • Перевірити, що запит на персону:

    • існує в il DB

    • належить пацієнту

      • в разі помилки - повернути 404 ('not found')

Сервісна логіка

  1. Отримати person_id

  2. Отримати деталі по запиту на персону з таблиці il.person_requests по id

  3. В разі, якщо поле person_requests.documents містить не пустий масив - підготувати дані для поля urgent.documents у відповіді

    1. Отримати всі значення documents.[x].type з запиту на персону

    2. Викликати Media Content Storage для генерації URL для завантаження для кожного типу документу з запиту на персону, додати нові посилання до відповіді:

      1. дія: PUT

      2. бакет: MEDIA_STORAGE_PERSON_REQUEST_BUCKET

      3. resource_id: person_request_id

      4. resource_name: person_request_#{type}.jpeg

    3. Перевірити наявність файлу для кожного типу в сховищі даних для запиту на персону:

      1. якщо файл існує - встановити is_uploaded = true для типу документу у відповіді

      2. якщо файл не існує - встановити is_uploaded = false для типу документу у відповіді

  4. Відобразити відповідь у відповідності до специфікації.

  • No labels