<aside> <img src="/icons/snippet_gray.svg" alt="/icons/snippet_gray.svg" width="40px" /> JSON-схеми, які зараз використовуються по напрямках лікування зі збором потреби за методологією:
Ідіопатична сімейна дистонія
Ювенільний ревматоїдний артрит
Легенева артеріальна гіпертензія
Муковісцидоз
Первинні імунодефіцити
Хвороба Кавасакі
Аутизм
Орфанні захворювання
Розсіяний склероз
Бульозний епідермоліз
Дитячий церебральний параліч
Нанізм
<aside> <img src="/icons/asterisk_gray.svg" alt="/icons/asterisk_gray.svg" width="40px" />
Крім стандартних, до JSON-схеми додано декілька кастомних параметрів. Один з них — параметр createEntitiesByDefault
, який відповідає за автоматичне (на стороні BE) створення записів у відповідній сутності. Якщо значення параметра true
— при створенні заявки на потреби запис буде створено на BE автоматично, якщо false
— запис може бути створено лише вручну користувачем.
Для схеми PatientTreatmentGroup враховується значення параметра createEntitiesByDefault
******лише самої схеми, для схеми PatientsQuantity додатково перевіряється значення параметра createEntitiesByDefault
******батьківської схеми PatientTreatmentGroup: якщо PatientsQuantity має значення параметра true
, а в схемі PatientTreatmentGroup параметр false
, то запис не буде створено (оскільки не буде створено “батьківський” запис).
</aside>
</aside>
<aside> <img src="/icons/dependency_gray.svg" alt="/icons/dependency_gray.svg" width="40px" />
Підхід до використання JSON-схем наступний:
sequenceDiagram
actor U as User
participant S as e-Stock BE
participant MIS as MIS
activate S
Note over S: Configure JSON-schemas for each direction
deactivate S
U ->> MIS: Create requisition
MIS ->> S: **POST** **/v1/requisitions**
activate S
S -->> MIS: {id}
deactivate S
MIS ->> S: **GET /v1/requisitions/{id}**
activate S
****S -->> MIS: {full_requisition_info}
deactivate S
MIS -->> U: Open requisition page
U ->> MIS: Click on patients page
MIS ->> S: **GET** **/v1/requisitions/{requisitionId}/patients/schemaConfigurations**
activate S
****S -->> MIS: {JSON-schemas}
deactivate S
MIS ->> S: **GET /v1/requisitions/{requisitionId}/patients/{patientId}, GET /v1/requisitions/{requisitionId}/patients/treatmentGroups**
activate S
****S -->> MIS: {full_patients_data}
deactivate S
alt "schemaGroup": "PATIENTS_DATA_BASED"
MIS -->> U: Open patients page (full or empty), according to the JSON-schemas
else "schemaGroup": "PATIENTS_QUANTITY_BASED"
MIS -->> U: Open patient_quantity page (full or empty), according to the JSON-schemas
else "schemaGroup": "PATIENTS_QUANTITY_COHORT_BASED"
MIS -->> U: Open cohort page (full or empty), according to the JSON-schemas
end
Тобто: