我正在IBM Case Manager Case Builder中创建一个医疗保健解决方案。我有一个叫“病人”的角色。我希望在患者登录时显示他们的病例详细信息。有没有办法在病人登录时显示病例的详细信息。
我还有一个叫“医生”的角色,他可以通过点击搜索患者返回的搜索结果行中的链接来查看任何患者的病例详细信息。然而,在患者端,没有搜索,他们必须在登录后立即查看他们的病例详细信息。
如果有人能为我指明正确的方向,我将不胜感激。
提前谢谢。
发布于 2017-12-18 17:18:34
好吧,我想有很多方法可以做到这一点,但经过几分钟的思考,这里有一个建议。
a.在登录页面(Case Manager页面)上创建脚本适配器。
虽然连接到ecm.moel.desktop.onLogin事件会更直观,但onLogin在导航器范围内,我们需要确保启动了ICM,因为我们需要访问角色信息/ ICM。通过在登录页面上使用scriptadapter,我们不仅可以确保加载了ICM上下文/ api,还可以使用ICM api来检索案例并打开它……
b.在脚本适配器中,执行角色检查;这可以通过:var role = ecm.model.desktop.currentRole.name; (请参阅this blog)来完成
c.如果角色是patient,找到您想要打开的病例(Id);您可能想要使用ecm.model.SearchQuery进行查询,或者您可以构造一个插件服务(请参阅服务上的此 )。
d.使用c的结果,您就可以使用带有相应有效负载的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()
});
});https://stackoverflow.com/questions/45231181
复制相似问题