Показать информацию о зарегистрированных пользователях в IBM Case Manager
Я создаю решение Healthcare в IBM Case Manager Case Builder. У меня есть роль под названием "Пациент". Я хотел бы показать подробности случая пациента, когда они входят в систему. Есть ли способ показать подробности случая, когда пациент входит в систему.
У меня есть еще одна роль, которая называется "Доктор", которая может просматривать сведения о случае любого пациента, щелкая ссылку в строке списка возвращенных результатов поиска при поиске пациента. Тем не менее, на стороне пациента нет поиска, и они должны видеть детали своего случая, как только они входят в систему.
Если бы кто-то мог указать мне правильное направление в этом отношении, я был бы очень признателен.
Заранее спасибо.
1 ответ
Хорошо, я думаю, что есть много способов сделать это, но подумав об этом несколько минут, вот предложение.
а. Создайте скрипт-адаптер на целевой странице (страница Case Manager).
Хотя было бы более интуитивно понятно подключиться к событию ecm.moel.desktop.onLogin, onLogin находится в области действия навигатора, и мы должны быть уверены, что ICM был запущен, потому что нам нужен доступ к информации о роли / ICM api. Используя скрипт-переход на целевой странице, мы не только гарантируем, что загружен контекст / api ICM, но также сможем использовать API ICM для извлечения дела и его открытия...
б. В адаптере сценария проверьте свою роль; это можно сделать через: var role = ecm.model.desktop.currentRole.name;
(см. этот блог)
с. Если роль терпелива, выясните, какие дела вы хотите открыть; Вы можете запросить, используя ecm.model.SearchQuery, или вы можете создать службу плагинов (см. это руководство по сервисам).
д. В результате c вы сможете открыть страницу case, используя событие OpenCase с соответствующей полезной нагрузкой.
var caseId = "the id resulting from c.";
this.getSolution().retrieveCase(caseId, lang.hitch(this, function(caseFolder) {
this.onBroadcastEvent ('icm.OpenCase', {
"caseEditable": caseFolder.createEditable(),
"coordination": new icm.util.Coordination()
});
});