我正在IBM Case Manager Case Builder中创建一个医疗保健解决方案。我的角色叫"病人"。当患者登录时,我想显示他们的病例详细信息。有什么方法可以在患者登录时显示病例详细信息吗?
我还有一个角色叫"医生",他可以通过点击搜索患者时返回的搜索结果列表中的链接来查看任何患者的病例详细信息。然而,在患者方面,没有搜索,他们必须在登录后立即查看病例详细信息。
如果有人能为我指明正确的方向,我将不胜感激
提前谢谢。
好吧,我想有很多方法可以实现这一点,但考虑了几分钟后,这里有一个建议。
a。在登录页(案例管理器页面)上创建脚本适配器。
虽然连接到ecm.moel.desktop.onLogg事件会更直观,但onLogin在导航器范围内,我们需要确保ICM已启动,因为我们需要访问角色信息/ICM api。通过在登录页上使用脚本适配器,我们不仅可以确保ICM上下文/api已加载,而且还可以使用ICM api检索案例并打开它…
b。在脚本适配器中,进行角色检查;这可以通过以下方式实现:var role = ecm.model.desktop.currentRole.name;
(见此博客)
c。如果角色是患者,请找出要打开的病例(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()
});
});