ЕСОЗ - публічна документація
Update program medication registry_UA
Ціль
Сервіс розроблено для завантаження оновлень до реєстру медикаментів. Процес використовує сервіси jabba. По факту виконання запиту, створюється job, на основі якої створюються задачі. Кожна задача це один запит на оновлення сутності з реєстру.
Специфікація
Авторизація
Перевірити валідність токену доступу
в разі помилки - повернути 401 (“Invalid access token”) в разі невалідних валідацій
Перевірити, що токен дійсний
в разі помилки - повернути 401 (“Invalid access token”)
Перевірити скоупи користувача (scope = 'medication_registry:write') на можливість виконання даної дії
в разі помилки - повернути 403 (“Your scope does not allow to access this resource. Missing allowances: medication_registry:write”)
Перевірити запит
Перевірити запит використовуючи схему
Повернути 422 з переліком помилок валідації в разі їх неуспішності.
Перевірити, що registerType = ‘UPDATE_PROGRAM_MEDICATION_REGISTRY'
Повернути 422 з переліком помилок валідації в разі їх неуспішності.
Перевірити, що reasonDescription заповнено
Повернути 422 з переліком помилок валідації в разі їх неуспішності.
Перевірити вхідний файл у відповідності до структури файлу
Повернути 422 з переліком помилок валідації в разі їх неуспішності.
Перевірити, що ідентифікатори з запиту існують та активні
Повернути 404 з переліком помилок валідації в разі їх неуспішності.
Приклад файлу:
Сервісна логіка
Перевірити вхідні дані у відповідності до схеми
Перевірити існуючі та оновити сутності з реєстру медикаментів:
Отримати учасника програми по program_medications.id з файлу та оновити запис з наступними параметрами:
Атрибут | Джерело та логіка | Тип та обмеження | Н/О |
---|---|---|---|
id | program_medications.id | uuid | О |
medication_request_allowed | program_medications.medication_request_allowed | bool | О |
care_plan_activity_allowed | program_medications.care_plan_activity_allowed | bool | О |
inserted_by | user_id, from token | uuid | О |
updated_by | user_id, from token | uuid | О |
inserted_at | now(), auto | timestamp | О |
updated_at | now(), auto | timestamp | О |
reimbursement.reimbursement_amount | program_medication.reimbursement.reimbursement_amount | float8 in jsonb | О |
reimbursement.percentage_discount | program_medication.reimbursement.percentage_discount | float8 in jsonb | О |
wholesale_price | program_medications.wholesale_price | float8 | Н |
consumer_price | program_medications.consumer_price | float8 | Н |
reimbursement_daily_dosage | program_medications.reimbursement_daily_dosage | float8 | Н |
estimated_payment_amount | program_medications.estimated_payment_amount | float8 | Н |
start_date | program_medications.start_date | date | Н |
end_date | program_medications.end_date | date | Н |
registry_number | program_medications.registry_number | varchar(255) | Н |
Повернути ідентифікатор job з результатом.
ЕСОЗ - публічна документація