苍穹应用菜单触发 | 在应用主界面页签层打开第三方带会话信息页面
# 关键词
单点登录、页面集成、页面跳转、应用主界面页签层
# 一、需求
在许多业务场景中,由于客户已有系统在长期稳定使用,或功能页面在苍穹上重构代价巨大等因素,需要将现有系统中的功能页面直接嵌入到苍穹中以供业务平滑使用,故涉及到一个非常常见的业务场景:苍穹与第三方系统进行页面集成。用户登录苍穹之后,**点击某应用的指定菜单**,系统自动**单点登录**第三方系统并在 **应用主界面页签层** 打开第三方系统页面,然后用户可自由进行业务操作。
# 二、思路与方案
苍穹平台内,点击应用菜单后默认在应用主界面页签层打开页面,但该页面只能是在苍穹平台构建的,且不能通过嵌套第三方系统页面的URL来达到目的。因此,我们可考虑借助空白动态表单来进行开发,然后在该动态表单上预置IFrame控件,并为其绑定第三方系统页面的URL即可。
其次,关于单点登录,本需求与 [苍穹应用菜单触发 | 在新浏览器窗口打开第三方带会话信息页面](https://vip.kingdee.com/article/520242273347538432?productLineId=29&isKnowledge=1) 无差异,可进行参考。
# 三、实现过程
## 3.1 准备工作
苍穹系统:http://172.20.14.30:8080/ierp
第三方系统:本案例以另一套苍穹环境进行模拟,其访问地址:http://172.20.240.88:8080/ierp
统一身份认证服务系统:https://api.kingdee.com
## 3.2 注册应用
与 [苍穹应用菜单触发 | 在新浏览器窗口打开第三方带会话信息页面](https://vip.kingdee.com/article/520242273347538432?productLineId=29&isKnowledge=1) $3.2 节一致,请自行查阅原文内容。
## 3.3 在苍穹系统中开发单点登录金蝶云平台插件(CldPlatformSSOPlugin)
与 [苍穹应用菜单触发 | 在新浏览器窗口打开第三方带会话信息页面](https://vip.kingdee.com/article/520242273347538432?productLineId=29&isKnowledge=1) $3.3 节一致,请自行查阅原文内容。
## 3.4 开发空白动态表单页面展示第三方系统页面(TrdSysPageFormPlugin)
### 1.新建空白表单页面(kdec_thirdsyspage),其表单设计器如下图所示
![空白动态表单.webp](/download/0100b404af5a30dd41168299152db922639d.webp)
### 2.在上述页面注册插件展示第三方系统页面(TrdSysPageFormPlugin)
```language
@Override
public void afterBindData(EventObject evt) {
String trdSysTargetUrl = null;
try {
trdSysTargetUrl = OpenTrdPageUtils.getTrdSysTargetUrl(false);
} catch (Exception e) {
this.getView().showMessage(e.getMessage());
}
// 为IFrame控件设置URL
IFrame iFrame = this.getView().getControl(KEY_IFRAME_TRDSYSPAGE);
if (StringUtils.isNotEmpty(trdSysTargetUrl)) {
iFrame.setSrc(trdSysTargetUrl);
}
super.afterBindData(evt);
}
```
## 3.5 (单点登录第三方系统并)返回待打开页面的URL(OpenTrdPageUtils)
与案例 [点击苍穹应用菜单后如何单点登录第三方系统并打开页面(一)](https://developer.kingdee.com/article/424496978655738880?productLineId=29) $3.6 节一致,请自行查阅原文内容。
## 3.6 配置应用菜单
![菜单跳转2-菜单配置.webp](/download/0100e0c44fbdcef443feaead43d08899549c.webp)
## 3.7 在第三方系统中开发单点登录金蝶云平台插件(CloudPlatformSSOAuth)
与 [苍穹应用菜单触发 | 在新浏览器窗口打开第三方带会话信息页面](https://vip.kingdee.com/article/520242273347538432?productLineId=29&isKnowledge=1) $3.8 节一致,请自行查阅原文内容。
# 四、效果图
## 4.1 登陆苍穹系统
![苍穹登录.webp](/download/01006b2bea432c6644c6a5b86d67c96a5a63.webp)
![云平台登录页-1.webp](/download/01008fa3feb4c33241eba1f69eed80200c45.webp)
## 4.2 点击应用菜单
### 1.旧版门户
![菜单跳转2-效果图.webp](/download/0100580a3f14620a4529a193cc4f062b9c61.webp)
### 2.新版门户
![菜单跳转2-新版-效果图.webp](/download/0100e9fc385b617a40e4860ec3d8c2b6a157.webp)
# 五、开发环境版本
不限
# 六、注意事项
- 本案例因涉及两台服务,开发过程中存在**跨域问题,可通过以火狐浏览器访问避免**,生产环境请自行处理。
- 如需复现本案例效果,必须先在金蝶云平台注册应用并修改案例代码中的相关参数,详见 $3.2 节内容。
- 在开发单点登录功能前,需先同步苍穹与第三方系统的人员数据,使其保持一致(组织数据可根据实际业务确定)。考虑该功能点可独立开发,本案例中不予实现。
- 文章中代码展示不全,**附件中包含案例所有页面元数据、Java源码**,如有需要,请自行下载。
# 七、参考资料
[开发平台](https://vip.kingdee.com/knowledge/specialDetail/218022218066869248?productLineId=29)
[学习成长中心](https://developer.kingdee.com/school?productLineId=29)
[登录认证专题](https://vip.kingdee.com/knowledge/specialDetail/228892721203874816?productLineId=29)
[苍穹产品目录](https://developer.kingdee.com/knowledge?productLineId=29#tabMain) —— 系统服务云 —— 系统管理 —— 登录认证
[单点登录集成](https://developer.kingdee.com/school/243812482044022016?productLineId=29)(视频)
[金蝶云平台oauth2流程说明](https://cloud.kingdee.com/help/document/detail?item=448&doc=3023)
[【统一身份认证】第三方集成单点登录](https://developer.kingdee.com/article/359709414254707456?share_fromuid=&productLineId=29&islogin=true)
[单点登录插件,访问指定的数据中心,金蝶云单点登录](https://developer.kingdee.com/article/215788160662549248?productLineId=29)
[玩转IFrame控件](https://developer.kingdee.com/school/238328253755076096?topicId=239370320128587520&stageId=239370896610258432&pathId=239410657773565696&productLineId=29)(视频)
[点击苍穹应用菜单后如何单点登录第三方系统并打开页面(一)](https://developer.kingdee.com/article/424496978655738880?productLineId=29)
苍穹应用菜单触发 | 在应用主界面页签层打开第三方带会话信息页面
# 关键词单点登录、页面集成、页面跳转、应用主界面页签层# 一、需求在许多业务场景中,由于客户已有系统在长期稳定使用,或功能页面在苍...
点击下载文档
本文2024-09-23 01:15:09发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-144758.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章