Формат оповещений MQTT — различия между версиями
Материал из ИбисоПедии
Admin (обсуждение | вклад) (→Формат JSON) |
Admin (обсуждение | вклад) (→Ремарка) |
||
| (не показано 9 промежуточных версий этого же участника) | |||
| Строка 9: | Строка 9: | ||
| − | == Формат JSON == | + | === Формат JSON === |
| − | {"mdoc_id": "b32ba1ac-327a-11e8-a4b6-0800274e4bfc", | + | { |
| + | "mdoc_id": "b32ba1ac-327a-11e8-a4b6-0800274e4bfc", | ||
"subject_id": "8334f4ef-7a21-42ef-8205-7fefb4fdaa17", | "subject_id": "8334f4ef-7a21-42ef-8205-7fefb4fdaa17", | ||
| − | "depts": [ | + | "depts": [{ |
| − | + | "id": "04847bbf-d4fe-11e7-a081-0800278f9392", | |
| − | + | "action": 1 | |
| − | + | }, | |
| − | + | { | |
| − | + | "id": "e5e17e92-eeab-4adb-b768-d3fe327c8f3f", | |
| − | + | "action": 2 | |
| − | + | } | |
| − | + | ] | |
| − | |||
} | } | ||
| + | * uid медицинского документа | ||
| + | * uid пациента по базе (должен совпадать со значением идентифицирующего столбца грида) | ||
| + | * набор затронуты текущим изменением отделений: | ||
| + | ** uid отделения | ||
| + | ** действие со списком: | ||
| + | *** 1 - удалить запись | ||
| + | *** 2 - добавить запись | ||
| + | *** 3 - обновить данные существующей записи | ||
| − | [[Категория:KIS]] | + | |
| + | === Код для вставки в хранимую процедуру === | ||
| + | |||
| + | 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); | ||
| + | |||
| + | === Ремарка === | ||
| + | |||
| + | Для списков не требующих пост-фильтрации на стороне клиента (общий список госпитализированных) массив отделение может быть пустым. | ||
| + | |||
| + | [[Категория:KIS]] [[Категория:KIS сервисы]] | ||
Текущая версия на 10:25, 3 октября 2018
Содержание
Госпитализация пациентов
Атрибут для подписки на топик: [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);
Ремарка
Для списков не требующих пост-фильтрации на стороне клиента (общий список госпитализированных) массив отделение может быть пустым.