Формат оповещений 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);

Ремарка

Для списков не требующих пост-фильтрации на стороне клиента (общий список госпитализированных) массив отделение может быть пустым.