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

Skip to end of metadata
Go to start of metadata

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

Compare with Current View Version History

« Previous Version 13 Next »

Purpose

This method is designed to create reimbursement report which is based on Medication request and Medication dispense data for NHS admin. 


WS logic

Authorize user

  1. Verify the validity of access token
    1. Return 401 in case validation fails
  2. Check user scopes in order to perform this action (scope = 'reimbursement_report:download')
    1. Return 403 in case invalid scope(s)

Validate request

Validate input dates

  1. There is 2 available dates for the filtering: date_from_dispense and date_to_dispense. Both of them must be filled.

          In case of error show 422 error with message must be shown ( "Input dates must be filled")

  1. Validate input date_from and date_to
    • if date_from_request is not null then: date_from_dispense<=date_to_dispense and date_to_dispense must be filled

      in case of error - return 422 error:

      {:error, [{%{
              description: "Input dates are not valid",
              params: [],
              rule: :invalid
            }, "$.date_from_dispense"}]}

      Input dates filter the field: 

      • date_from_dispense/date_to_dispense comparing to field medication_dispenses.dispensed_at

If there is no data available for the requested period of time in response must be sent empty file, no error is shown. 

Prepare response

Output format -  text/csv

Response example
ЄДРПОУ,Повна назва закладу первинної медичної допомоги,Cтруктурні підрозділи закладу,,,,,,,,"Кількість населення, яке офіційно зареєстроване на території обслуговування закладу (осіб)

",Статус,
,,Назва структурного підрозділу ,"Населений пункт, де розташовано підрозділ",,,"Адреси проживання населення, що обслуговується підрозділом",,,,,,
,,,Район (місто),Тип,Назва,Індекс,Тип,Назва,Номери будинків,,,
38765198,"КЗ ""Бахмацький районний центр первинної медико-санітарної допомоги""",Амбулаторія ЗП СМ м.Бахмач,Бахмацький район,м.,Бахмач,16500,Структурний підрозділ обслуговує всі адреси цього населеного пункту,,,44 500,,
38765198,"КЗ ""Бахмацький районний центр первинної медико-санітарної допомоги""",Амбулаторія ЗП СМ с. Батурин,Бахмацький район,м.,Батурин,16512,Структурний підрозділ обслуговує всі адреси цього населеного пункту,,,44 500,,
38765198,"КЗ ""Бахмацький районний центр первинної медико-санітарної допомоги""",Амбулаторія ЗП СМ смт. Дмитрівка,Бахмацький район,смт,Дмитрівка,16572,Структурний підрозділ обслуговує всі адреси цього населеного пункту,,,44 500,,
38765198,"КЗ ""Бахмацький районний центр первинної медико-санітарної допомоги""",Амбулаторія ЗП СМ с. Тиниця,Бахмацький район,с.,Тиниця,16560,Структурний підрозділ обслуговує всі адреси цього населеного пункту,,,44 500,,
38765198,"КЗ ""Бахмацький районний центр первинної медико-санітарної допомоги""",Амбулаторія ЗП СМ с. Фастовці,Бахмацький район,с.,Фастовці,16550,Структурний підрозділ обслуговує всі адреси цього населеного пункту,,,44 500,,
  1. Prepare response with fields described below and conditions described below:
  • first row is for headers (REQUESTED_FIELD which is below)
  • NHS admin will receive all Medication Dispenses and corresponding Medication Requests.
  • in case there is no Medication Dispenses for Medication Requests, Medication Requests won't be shown in the report
  • for Medication Dispense: status='PROCESSED'


REQUESTED_FIELDREPORT_FIELDSOURCECOMMENT

Назва суб’єкту господарювання (аптека)

pharmacy_namemedication_dispense.legal_entity.name

Код ЄДРПОУ суб'єкту господарювання (аптека)

pharmacy_edrpoumedication_dispense.legal_entity.edrpou

Назва закладу охорони здоров’я

msp_namemedication_request.legal_entity.name 

Код ЄДРПОУ закладу охорони здоров’я

msp_edrpoumedication_request.legal_entity.edrpou

Лікар, що виписав рецепт (ПІБ)

doctor_namemedication_request.employee.party.last_name&first_name&second_name

Лікар, що виписав рецепт (ID)

doctor_idmedication_request.employee.id

№ Номер рецепта

request_numbermedication_request.request_number

Дата створення рецепта

created_atmedication_request.created_at

Дата відпуску рецепта

dispensed_atmedication_dispense.dispensed_at

Міжнародна непатентована назва лікарського засобу (словник реєстру)

innm_name
select i.name
from ingredients ing inner join innms i
on ing.innm_child_id=i.id
where ing.
parent_id=$medication_dispense.innm_dosage.id
and is_primary=true

Лікарська формаinnm_dosage_namemedication_request.medication.nameinnm_dosage

Торгова назва лікарського засобу

medication_namemedication_dispense.details.medication.name

Сила дії (дозування)

-----
do not show

Форма випуску (словник реєстру)

formmedication_dispense.details.medication.form

Кількість одиниць лікарської форми відповідної дози в упаковці, од.

package_qtymedication_dispense.details.medication.package_qty

Кількість відпущених упаковок, упак

/Кількість відпущених ліків, одиниць

medication_qtymedication_dispense_details.medication_qtyunits, not packages

Фактична роздрібна ціна реалізації упаковки, грн

sell_amountmedication_dispense_details.sell_amount

Розмір відшкодування вартості лікарського засобу за упаковку, грн

reimbursement_amountmedication_dispense_details.reimbursement_amount

Сума відшкодування, грн

discount_amountmedication_dispense_details.discount_amount

Сума доплати за упаковку ЛЗ, грн

Фактична роздрібна ціна за одиницю, грн

sell_pricemedication_dispense_details.sell_priceinstead we show all fields to be able to calculate this value
Номер фіксального чекуpayment_idmedication_dispense.payment_id
Сума транзакціїpayment_amountmedication_dispense.payment_amount




  • No labels