告别插件禁用,开启场景化的插件扩展新模式

对于二次开发伙伴,在使用苍穹平台过程中,常会遇到如下问题:
由于系统预置的业务插件,将逻辑封装在出厂插件的单个方法中 ,使得现场二开无法调整方法内部逻辑,只能将整个插件禁用,完全重写业务逻辑,导致后续无法升级;
各业务领域,自行提供不同的二次开发扩展方案,导致二次开发学习成本较高;
平台同时运行大量的业务扩展点,存在扩展点冗余情况,缺少统一的入口,无法直观查看相应信息。
基于上述问题,金蝶云苍穹平台提供一套基于业务场景的插件扩展方案,从产品的开放性上创新,通过平台框架来提升产品的规范性和可扩展性,供各业务领域统一采用,可有效解决上述问题。
本期,小编就带大家详细了解基于业务场景的插件扩展方案。
1 适用版本
该功能适用版本为金蝶云·苍穹V5.0.002及以上。
2 功能速览
本方案分别从业务开发人员、二次开发人员两种角色出发,说明如何实现基于业务场景的插件扩展。
首先,先了解下该插件扩展方案的整体流程,如下图所示:

图|插件扩展方案整体流程
从图中可看出,两种不同角色的操作路径分别为:
业务开发人员:由业务领域在开发业务功能时,先确定允许二开扩展的业务场景,然后为此封装扩展接口,注册到平台的业务扩展场景列表中;
二次开发人员:实现扩展接口,完成插件开发,绑定到相应业务场景上。
大家根据自己的角色,找到对应的操作路径哦!
接下来,为大家详细介绍操作步骤:
2.1 【业务开发人员:确定业务扩展场景】
第一步:封装业务扩展插件接口
开发业务功能时,需要提前考虑,此业务场景是否允许二开扩展?或者是否已经有客户现场反馈要对此场景作扩展?
对于允许扩展的业务场景,封装插件接口的细分步骤如下:
1) 首先,对实现逻辑进行整理、细分,寻找一个或多个允许二开扩展的时机点;
2) 然后,将实现逻辑封装成事件方法,并定义此事件方法需要的参数;
3) 最后,将所有事件方法组合起来,定义扩展插件接口。
第二步:注册业务扩展场景
通过平台提供的业务扩展场景列表,注册允许扩展的业务场景。注册完毕后,点击列表引出菜单,生成预插元数据文件,提交svn或git代码库,随产品发布,如下图所示:

图|注册业务扩展场景示例
第三步:修改业务代码,触发业务场景扩展插件
在业务场景的代码中,构造插件代理对象,传入当前业务场景编码,由平台自动加载并创建绑定的扩展插件。在允许扩展的时机点,准备好事件参数对象,调用插件代理对象的方法,触发插件事件。

图|业务场景扩展插件触发机制
平台提供两种模式触发插件事件:扩展模式和覆盖模式,二者效果不同,需根据业务场景需求进行选择:

图|插件事件触发机制
扩展模式:对标准业务逻辑进行补充,在内置逻辑前或后执行,通常用于准备参数、同步关联数据,对结果再加工等;
覆盖模式:替换标准业务逻辑。
2.2【客户现场二次开发:实现业务扩展插件】
第一步:查找业务扩展场景
在【业务扩展场景列表】按应用、业务对象搜索业务场景,确认需扩展的业务场景是否在列表中:
a. 如果不存在,可提
告别插件禁用,开启场景化的插件扩展新模式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



