一种办公系统工作流引擎实现方法
文献发布时间:2023-06-19 16:08:01
技术领域
本发明涉及工作流技术领域,尤其是涉及一种办公系统工作流引擎实现方法。
背景技术
目前许多公司采用纸质表单手工传递的方式,一级一级审批签字,工作效率非常低下,且不能实现统计报表功能。在高度自动化、智能化的办公系统中,需要提供统一的流程设计、流程建模、流程监控,应用系统需要实现流程管理时调用统一的流程中心服务,而工作流引擎在其中起到核心的作用,即在多个参与者之间按某种预定规则自动传递文档、信息或者任务。使用工作流软件,用户只需在电脑上填写有关表单,工作流会按照定义好的流程自动运行,下一级审批者将会收到相关资料,并可以根据需要修改、跟踪、管理、查询、统计、打印等,实现自动化管理,大大提高办公效率。
发明内容
本发明提供一种办公系统工作流引擎实现方法,以解决现有办公系统中纸质表单传递效率低的问题。
一种办公系统工作流引擎实现方法,包括以下步骤:
S1、定义工作流数据结构及存储规则;
S2、定义工作流数据通信方式及流转方式;
S3、工作流功能设置,包括基础设置、表单设置、流程设置及高级设置;
S4、审批的发起与流转流程设置;
S5、工作流数据结构设置,包括基础设置数据结构、表单设置数据结构、流程设置数据结构及高级设置数据结构;
S6、访问接口数据,以获取用户系统的通讯录信息。
进一步地,步骤S1所述数据结构为json数据,json在各个平台都拥有可用的、稳定的json解析库,在服务端、web端、Android端、IOS端都可以对数据进行解析;
所述存储规则为MongoDB数据库存储,MongoDB是一个基于分布式文件存储的数据库,它最大的特点是语言查询功能强大,可以实现类似关系数据库单表查询的绝大部分功能,且支持对数据建立索引。
进一步地,步骤S2所述通信方式为https,各平台与服务端使用https方式进行通信访问,底层为TCP协议,可保证连接的稳定性,且发送的数据包不会丢失,通过SSL加密,保证在传输过程中数据的安全性;
所述流转方式采用同步执行的方式,以实时获取通过的结果。
进一步地,步骤S3所述基础设置内容包括表单名称及图标、发起审批者权限以及审批分组;所述表单设置内容包括单行输入、多行输入、数字输入、单选、复选、下拉选择、多层级联选择、滑块、时间选择、时间范围选择、附件上传、自动公式计算及表格;所述流程设置内容包括发起人、审批人、抄送人及分支条件;所述高级设置内容包括权限操作,可设置审批流转时是否必须填写审批意见、审批人为发起人时是否自动通过、审批意见是否对发起人可见。
进一步地,所述流程设置还支持对表单进行长度设置、填写字段长度限制。
进一步地,步骤S6所述通讯录信息以https或RPC调用方式访问,所述通讯录信息包括用户名称、唯一ID、角色信息、岗位信息及所属部门。
进一步地,本发明工作流引擎还包括拦截功能,通过动态配置的执行类名、函数名、请求参数、返回值,动态获取执行结果或执行结束后的操作。
本发明的有益效果是:本发明提供一种办公系统工作流引擎实现方法,能够实现对表单进行线上审批,节省管理成本、提高办公效率,且本方案易于集成。
附图说明
图1是本发明一种办公系统工作流引擎实现方法的一实施例功能设置的流程示意图;
图2是本发明一种办公系统工作流引擎实现方法的一实施例审批的发起与流转流程示意图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的优选实施方式。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反的,提供这些实施方式的目的是为了对本发明的公开内容理解得更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例,不是为了限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
一种办公系统工作流引擎实现方法,包括以下步骤:
S1、定义工作流数据结构及存储规则,本实施例中,数据结构为json数据,存储规则为采用MongoDB数据库存储;
S2、定义工作流数据通信方式及流转方式,本实施例中,各平台与服务端使用https方式进行通信访问,底层为TCP协议,通过SSL加密;工作流流转采用同步执行的方式,以实时获取通过的结果;
S3、工作流功能设置,包括基础设置、表单设置、流程设置及高级设置;
请参考图1,图1为功能设置的流程图,包括:
S31、基础设置,首先设置表单名称与图表等基础设置,明确哪些用户可以发起审批及审批的分组;
S32、表单设置,表单支持单行输入框组件、多行输入框组件、数字输入框组件、单选框组件、复选框组件、下拉选择框组件、多层级联选择框组件、滑块组件、时间选择框组件、时间范围选择框组件、附件上传组件、自动公式计算组件、表格组件等;同时支持以鼠标拖拽的方式将组件拖出合并组合、对组件长度进行设置、填写字段长度限制等功能;
S33、流程设置,流程设置中包含发起人、审批人、抄送人及分支条件四个节点:
发起人节点,是流程的第一个节点,表示流程发起者发起表单的过程;
审批人节点,是发起人下一级的审批节点,选择方式包含审批人本人、审批人自选、审批人直属领导、固定审批人、角色、岗位等,节点上设置对组件上当前审批是否公开、是否只读、是否可编辑,当审批节点上审批人有多个时,节点上设置或签或会签;
抄送人节点,待审批人审批结束后,抄送人收到审批的通过记录提醒;
分支条件节点,将审批设置成条件后,审批进入分支条件,可支持数字输入框组件、单选框组件、复选框组件、下拉选择框组件、多层级联选择框组件、滑块组件、时间选择框组件、时间范围选择框组件、自动公式计算组件等。
S34、高级设置,包括审批流转时是否必须填写审批意见、审批人为发起人时是否自动通过、审批意见是否对发起人可见等权限操作;
S4、审批的发起与流转流程设置;
请参考图2,图2为审批的发起与流转流程,包括:
S41、由申请人填写表单信息,提交审批表单发起审批;
S42、判断节点类型是否为分支节点,
如果是分支节点,则判断配置的条件、需要走的分支,流转至下个节点,重复步骤S42;
如果不是分支节点,则进入下一步;
S43、判断节点类型是否为审批人节点,
如果是审批人节点,则等待审批人审批;
如果不是审批人节点,则进入下一步;
S44、判断节点类型是否为抄送人节点,
如果是抄送人节点,则记录抄送人并流转至下个节点,返回步骤S42;
如果不是抄送人节点,则结束流程;
S45、审批人对表单进行审批,对表单进行同意或拒绝,并配置修改权限以对表单进行修改,
如果审批通过,则填写审批意见,跳转至下级节点,返回步骤S42;
如果审批不通过,则填写不通过理由,并结束流程。
S46、流程结束后,将流程发送给抄送人。
S5、工作流数据结构设置,包括基础设置数据结构、表单设置数据结构、流程设置数据结构及高级设置数据结构;
具体地,工作流整体数据结构参见表1:
表1
基础设置数据结构参见表2:
表2
表单设置数据结构参见表3:
表3
流程设置数据结构参见表4:
表4
高级设置数据结构参见表5:
表5
S6、访问接口数据,以获取用户系统的通讯录信息;
自定义表单与流程过程中,需要对接用户系统,以获取用户系统的通讯录信息,本实施例中,通过https或RPC调用的方式访问接口数据,接口数据包含用户名称、唯一ID、角色信息、岗位信息及所属部门。
在其他实施例中,还设计了拦截功能,以实现在流程开始时判断是否发起,在流程结束时判断是否执行结束操作,具体地,使用java反射机制,通过动态配置的执行类名、函数名、请求参数、返回值,动态获取执行结果或执行结束后的操作。
具体地,以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
- 一种办公系统工作流引擎实现方法
- 工作流引擎系统和工作流引擎系统的实现方法