一种基于业务流程实现动态模块编排的方法技术

技术编号:39804514 阅读:19 留言:0更新日期:2023-12-22 02:35
本发明专利技术涉及模块编排技术领域,具体涉及一种基于业务流程实现动态模块编排的方法

【技术实现步骤摘要】
一种基于业务流程实现动态模块编排的方法


[0001]本专利技术涉及模块编排
,具体涉及一种基于业务流程实现动态模块编排的方法


技术介绍

[0002]在互联网时代,大部分公司的业务已经从线下切换到线上,特别是
ToB
的业务,很多业务场景,需要多个作业节点

需要多人参与

完成各个业务节点的操作(业务数据的录入,业务数据的审批,操作权限验证),从而完成整个业务流程

随着公司业务的发展

业务的规模扩大,从而导致业务的复杂性升高,比如建筑行业的招投标业务,包括五个业务大节点

以及超过三十个业务子节点

不同的招标方式对节点的要求都会不相同,不同的招标单位对节点的操作诉求也是不一样,例如某些部门要求某个节点在某些情况下是不能被展示

不能被编辑;某些情况下需要依赖前置的多个节点;某些情况需要能同时并行操作多个层级的节点等

[0003]因此,本专利技术提供了一种基于业务流程实现动态模块编排的方法,以至少解决上述部分技术问题


技术实现思路

[0004]本专利技术要解决的技术问题是:提供一种基于业务流程实现动态模块编排的方法,至少解决上述部分技术问题

[0005]为实现上述目的,本专利技术采用的技术方案如下:一种基于业务流程实现动态模块编排的方法,包括以下步骤:步骤
1、
设置业务流程的业务编码和业务名称;步骤
2、
获取业务流程中所有模块,设置模块的模块代码和模块名称;步骤
3、
设置业务流程的开始模块

各模块的模块元数据和模块间依赖关系;步骤
4、
构建模块编排模板,设置模块编排模板中模块的模块元数据和模块间依赖关系;步骤
5、
根据业务流程的业务类型构建并加载模块树;遍历模块树,获取模块编排模板的模块元数据,动态渲染前端页面,生成模块实例;步骤
6、
对模块实例进行维护;步骤
7、
采用模块实例进行业务处理

[0006]进一步地,所述步骤1还包括将不同业务类型的业务流程进行分类

[0007]进一步地,所述步骤2还包括设置模块的可编辑逻辑和可生效逻辑

[0008]进一步地,所述步骤3包括:步骤
31、
设置业务流程的开始模块,包括设置开始模块的模块代码和模块名称;步骤
32、
设置各模块的模块元数据,包括模块的模块代码

模块名称

当前模块与其他模块的父子关系

当前模块父子关系中的子模块代码

当前模块是否为开始模块

默认是否使用当前模块

当前模块的可使用条件

当前模块的父模块代码和上下
文校验条件;步骤
33、
生成模块树实例列表,包括绑定并生成各模块所属业务流程的业务类型和业务编码;步骤
34、
设置各模块的依赖关系,包括设置依赖关系中原始模块代码和目标模块代码,确定原始模块与目标模块是否为顺序依赖关系和生效依赖关系,获取顺序依赖条件

[0009]进一步地,所述模块编排模板包括业务流程的类型

模板
ID、
模板代码

模块状态和编排灰度策略

[0010]进一步地,构建并加载模块树包括:步骤
51、
根据业务流程的业务编码和业务类型获取模块编排模板的初始化模块图;步骤
52、
计算当前业务流程主状态对应的当前模块;步骤
53、
根据父子关系,获取当前模块的子模块;步骤
54、
根据模块编排模板的初始化模块图,获取当前模块的前置模块

后置模块和不展示的模块;步骤
55、
构建模块树,包括配置当前模块的模块代码

模块名称

模块是否激活和子模块列表;步骤
56、
渲染模块树,包括遍历模块树实例列表,根据业务编码获取当前模块的模块元数据,并读取当前模块的模块规则进行模块处理,生成模块实例

[0011]进一步地,所述步骤6包括:步骤
61、
业务前端判断前置模块是否完成且当前模块是否可开始;业务前端判断当前模块未完成时,若可开始则显示操作按钮,若不可开始则隐藏操作按钮;步骤
62、
若前置模块已完成且当前模块可开始,服务端生成模块实例数据;步骤
63、
提交模块实例数据,对当前模块进行生效;步骤
64、
自动跳转至下一个模块,循环步骤
61~
步骤
63。
[0012]进一步地,业务前端判断前置模块是否完成的方法为:步骤
a1、
根据当前模块的模块代码

业务流程的业务类型和业务名称,获取模块间依赖关系

筛选生效依赖关系;步骤
a2、
循环模块间依赖关系查找模块,执行已查找模块的模块规则,将模块作为待验证模块加入待验证列表;步骤
a3、
根据待验证模块的模块代码获取模块实例数据,当不存在模块实例数据,则前置模块已完成,相反则前置模块未完成

[0013]进一步地,业务前端判断当前模块是否可开始的方法为:步骤
b1、
根据当前模块的模块代码

业务流程的业务类型和业务名称,获取模块间依赖关系

筛选顺序依赖关系;步骤
b2、
获取顺序依赖关系的依赖规则,执行依赖规则为真或没有依赖规则的关系;步骤
b3、
循环模块间依赖关系,查找模块并执行模块的依赖规则,判断模块的实例状态是否为生效,若当前模块的实例状态为生效,则当前模块为可开始,相反则当前模块不可开始

[0014]进一步地,所述步骤7包括:步骤
71、
获取业务流程的业务代码和模块实例;步骤
72、
根据业务代码判断当前模块是否可以进行业务操作,可以则进行业务操作;步骤
73、
根据业务代码判断当前业务流程状态是否可变更,可以则进行变更;步骤
74、
将进行业务操作和已变更模块的模块实例更新为已生效

[0015]与现有技术相比,本专利技术具有以下有益效果:本专利技术基于模块元数据

模块依赖关系

模块编排流程,完成了模块业务逻辑实现和模块的完全解耦,只需进行业务流程模块的梳理

依赖关系定义和模块实例状态维护,就可以本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于业务流程实现动态模块编排的方法,其特征在于,包括以下步骤:步骤
1、
设置业务流程的业务编码和业务名称;步骤
2、
获取业务流程中所有模块,设置模块的模块代码和模块名称;步骤
3、
设置业务流程的开始模块

各模块的模块元数据和模块间依赖关系;步骤
4、
构建模块编排模板,设置模块编排模板中模块的模块元数据和模块间依赖关系;步骤
5、
根据业务流程的业务类型构建并加载模块树;遍历模块树,获取模块编排模板的模块元数据,动态渲染前端页面,生成模块实例;步骤
6、
对模块实例进行维护;步骤
7、
采用模块实例进行业务处理
。2.
根据权利要求1所述的一种基于业务流程实现动态模块编排的方法,其特征在于,所述步骤1还包括将不同业务类型的业务流程进行分类
。3.
根据权利要求1所述的一种基于业务流程实现动态模块编排的方法,其特征在于,所述步骤2还包括设置模块的可编辑逻辑和可生效逻辑
。4.
根据权利要求1所述的一种基于业务流程实现动态模块编排的方法,其特征在于,所述步骤3包括:步骤
31、
设置业务流程的开始模块,包括设置开始模块的模块代码和模块名称;步骤
32、
设置各模块的模块元数据,包括模块的模块代码

模块名称

当前模块与其他模块的父子关系

当前模块父子关系中的子模块代码

当前模块是否为开始模块

默认是否使用当前模块

当前模块的可使用条件

当前模块的父模块代码和上下文校验条件;步骤
33、
生成模块树实例列表,包括绑定并生成各模块所属业务流程的业务类型和业务编码;步骤
34、
设置各模块的依赖关系,包括设置依赖关系中原始模块代码和目标模块代码,确定原始模块与目标模块是否为顺序依赖关系和生效依赖关系,获取顺序依赖条件
。5.
根据权利要求1所述的一种基于业务流程实现动态模块编排的方法,其特征在于,所述模块编排模板包括业务流程的类型

模板
ID、
模板代码

模块状态和编排灰度策略
。6.
根据权利要求1所述的一种基于业务流程实现动态模块编排的方法,其特征在于,构建并加载模块树包括:步骤
51、
根据业务流程的业务编码和业务类型获取模块编排模板的初始化模块图;步骤
52、
计算当前业务流程主状态对应的当前模块;步骤
53、
根据父子关系,获取当前模块的子模块;步骤
54、
根据模块编排模板的初始化模块图...

【专利技术属性】
技术研发人员:白富贵张自平张鑫
申请(专利权)人:云筑信息科技成都有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1