Формат оповещений MQTT
Материал из ИбисоПедии
Содержание
Госпитализация пациентов
Атрибут для подписки на топик: [Subscription('kis/lists/hospitalized')]
Списки подписанные на топик:
- TfmHospitalizedList,
- TfmHospitalizedDoctor,
- TfmHospListNurse
Формат JSON
{
"mdoc_id": "b32ba1ac-327a-11e8-a4b6-0800274e4bfc",
"subject_id": "8334f4ef-7a21-42ef-8205-7fefb4fdaa17",
"depts": [{
"id": "04847bbf-d4fe-11e7-a081-0800278f9392",
"action": 1
},
{
"id": "e5e17e92-eeab-4adb-b768-d3fe327c8f3f",
"action": 2
}
]
}
- uid медицинского документа
- uid пациента по базе (должен совпадать со значением идентифицирующего столбца грида)
- набор затронуты текущим изменением отделений:
- uid отделения
- действие со списком:
- 1 - удалить запись
- 2 - добавить запись
- 3 - обновить данные существующей записи
Код для вставки в хранимую процедуру
perform pg_notify('mqtt',
json_build_object('topic','kis/lists/hospitalized',
'payload',json_build_object('mdoc_id', <mdoc_id>,
'subject_id', <subject_id>,
'depts', json_build_array(json_build_object('id',<dept_id>,
'action',<action>))))::text);
Ремарка
Для списков не требующих пост-фильтрации на стороне клиента (общий список госпитализированных) массив отделение может быть пустым.