审批流程的实现方法、装置、电子设备及存储介质与流程

文档序号:14991764发布日期:2018-07-20 22:22阅读:460来源:国知局

本发明涉及计算机技术领域,具体而言,涉及一种审批流程的实现方法、装置、电子设备及存储介质。



背景技术:

目前,大多数公司都有自己的管理系统,用于员工的工作流程管理,例如请假、加班、项目经费申请等。管理系统中的审批流程的制作方法通常是利用开发工具进行审批流程开发,例如利用eclipse根据bpmn进行开发。其中,bpmn是审批流程的标准,用于统一业务流程描述符号等。现有的审批流程的制作方法不仅不便于普通人员进行审批流程的制作,给用户对于审批流程制作带来了困扰。



技术实现要素:

有鉴于此,本发明实施例提供了一种审批流程的实现方法、装置、电子设备及存储介质。

为了实现上述目的,本发明采用的技术方案如下:

第一方面,本发明实施例提供了一种审批流程的实现方法,所述方法包括:读取预先存储的改进bpmn-js工具包,所述改进bpmn-js工具包包括对原始bpmn-js工具包的原始bpmn组件进行内容翻译、数据扩展、图形编辑以及组件筛选后获得的多个改进bpmn组件;将所述多个改进bpmn组件进行展示;根据用户基于所述多个改进bpmn组件进行的绘图操作,生成审批流程。

第二方面,本发明实施例提供了一种审批流程的实现装置,所述装置包括:工具读取模块、组件展示模块以及流程生成模块,其中,所述工具读取模块用于读取预先存储的改进bpmn-js工具包,所述改进bpmn-js工具包包括对原始bpmn-js工具包的原始bpmn组件进行内容翻译、数据扩展、图形编辑以及组件筛选后获得的多个改进bpmn组件;所述组件展示模块用于将所述多个改进bpmn组件进行展示;所述流程生成模块用于根据用户基于所述多个改进bpmn组件进行的绘图操作,生成审批流程。

第三方面,本发明实施例提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机指令,当所述计算机指令由所述处理器读取并执行时,使所述处理器执行上述第一方面提供的审批流程的实现方法。

第四方面,本发明实施例提供了一种存储介质,所述存储介质中存储有计算机指令,其中,所述计算机指令在被读取并运行时执行上述第一方面提供的审批流程的实现方法。

本发明实施例提供的审批流程的实现方法、装置、电子设备及存储介质,通过读取预先存储的改进bpmn-js工具包,改进bpmn-js工具包包括对原始bpmn-js工具包的原始bpmn组件进行内容翻译、数据扩展、图形编辑以及组件筛选后获得的多个改进bpmn组件,然后将上述多个改进bpmn组件进行展示,最后根据用户基于多个改进bpmn组件进行的绘图操作,生成审批流程。该审批流程的实现方法、装置、电子设备及存储介质通过利用改进后的改进bpmn-js工具包进行审批流程的制作,由于改进bpmn-js工具包包括有各种用户需要的流程组件,从而可以便于普通用户进行审批流程的制作。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1示出了本发明实施例提供的电子设备的方框示意图;

图2示出了本发明实施例提供的审批流程的实现方法的一种流程图;

图3示出了本发明实施例提供的审批流程的实现方法的另一种流程图;

图4示出了本发明实施例提供的审批流程的实现方法的又一种流程图;

图5示出了本发明实施例提供的审批流程的实现方法的另一种流程图;

图6示出了本发明实施例提供的审批流程的实现装置的模块图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

图1示出了一种可应用于本发明实施例中的电子设备的结构框图。如图1所示,电子设备100包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108、射频模块110、音频模块112、显示单元114等。这些组件通过一条或多条通讯总线/信号线116相互通讯。

存储器102可用于存储软件程序以及模块,如本发明实施例中的审批流程的实现方法及装置对应的程序指令/模块,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,如本发明实施例提供的审批流程的实现方法。

存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。

外设接口108将各种输入/输出装置耦合至处理器106以及存储器102。在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

射频模块110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。

音频模块112向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。

显示单元114在电子设备100与用户之间提供一个显示界面。具体地,显示单元114向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频及其任意组合。

可以理解,图1所示的结构仅为示意,电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

第一实施例

如图2示出了本发明实施例提供的审批流程的实现方法的一种流程图。请参见图2,该审批流程的实现方法包括:

步骤s110:读取预先存储的改进bpmn-js工具包,所述改进bpmn-js工具包包括对原始bpmn-js工具包的原始bpmn组件进行内容翻译、数据扩展、图形编辑以及组件筛选后获得的多个改进bpmn组件。

在本发明实施例中,bpmn-js是利用js编写的bpmn2.0渲染工具包,工具包中包括有多个制作审批流程的工具。虽然bpmn-js是一个规范的工具包,但原生的原始bpmn-js流程组件过多有很多审批链中不需要的组件,且导出的数据结构过于单一、灵活性差,不方便开发和使用,且原始bpmn是英文显示,因此直接完全用于审批流程的制作还是存在问题的。从而可以对原生的原始bpmn-js工具包进行改造,以使其可以适用于流程链审批中,但是,因此可以对工具包进行改进。

在本发明实施例中,在步骤s110之前,可以将原生的原始bpmn-js工具包的多个组件进行改进。

首先,可以对整个bpmn-js的组件进行汉化,具体可以是在工具包的配置文件中配置一个中英文映射文件,然后调用customcustomtranslatefn方法,将插件中用到的英文全部翻译成中文,从而在用户进行审批流程制作时更加的方便。

然后,可以扩展bpmn-js的数据。具体可以是创建一个自定义属性的配置文件,然后将配置文件通过bpmnmodeler的moddleextensions属性传入到bpmn中去。

可以理解的是,由于每个公司需要的字段可能不一样,且bpmn-js绘制图形导出的数据过于单一,缺少必要的数据结构,给开发和使用过程造成不便,因此,需要扩展bpmn的model,创建自定义属性,这样就可以扩展导出的数据结构。从而可以使后续制作审批流程过程中,将需要的数据写入到bpmn最后导出的xml数据中,方便后台开发人员对数据进行进一步处理。对bpmn-js的数据进行扩展后,可以在原始bpmn-js的基础上进一步定义审批流程的标准数据结构,方便审批流程的数据的统一管理。另外,在后期开发人员开发时,开发人员只需要按照标准的数据结构模式进行开发和接入,后续导出的审批流程的数据就可以实现通用。

由于审批的核心关键在于人员,bpmn中人员相关的组件过于简单,数据结构单一、开发和扩展的灵活性差。因此,需要再对各原始组件的图形进行编辑,即扩展人员组件,通过调用customrenderer方法,将扩展的人员组件传递到bpmn中去,扩展之后的人员组件可以接收更多外界传递的信息,并将信息序列化整理后传递给后台开发人员,方便后台开发人员进行开发和管理。例如对人员组件的图形进行编辑,将人员组件对应的“框”的图形编辑为“小人”形状的图形。具体可以是利用svg工具绘制“小人”图形,然后将该图形覆盖人员组件原生的图形。

最后,还可以对多个原始组件进行筛选。由于原始bpmn组件过多,因此可以筛选出常用的组件放在工具面板和上下文面板。从而使用户使用起来更容易找到想用的组件,方便用户使用。

在经过上述改进后,获得改进后的改进bpmn-js工具包,改进bpmn-js工具包包括对原始bpmn-js工具包的原始bpmn组件进行内容翻译、数据扩展、图形编辑以及组件筛选后获得的多个改进bpmn组件,并将上述改进bpmn-js工具包进行存储。

在用户需要进行审批流程的制作时,可以基于用户的操作读取上述存储的改进bpmn-js工具包。

步骤s120:将所述多个改进bpmn组件进行展示。

在读取上述存储的改进bpmn-js工具包之后,可以将上述改进bpmn-js工具包的多个改进bpmn组件进行展示。具体可以是在工具面板和上下文面板中进行展示。

步骤s130:根据用户基于所述多个改进bpmn组件进行的绘图操作,生成审批流程。

在将上述多个改进bpmn组件进行展示后,用户可以通过图形化界面来绘制审批流程。基于用户对个上述多个改进bpmn组件的绘图操作,可以生成审批流程。具体的,通过bpmncustom.getmodeler方法将改进bpmn组件引入到审批流项目中去,然后调用modeler.importxml方法将bpmn的数据渲染成流程图。

通过上述方法即可以实现基础的审批流程的制作,不需要专业的开发人员基于开发工具进行开发,普通的用户也可以进行审批流程的制作。

在本发明实施例中,请参见图3,在根据用户基于所述多个改进bpmn进行的绘图操作生成审批流程之后,该审批流程的实现方法还跨越包括:

步骤s140:基于所述用户的保存操作生成所述审批流程的xml数据,并将所述xml数据存储。

可以理解的是,在用户绘制完成后,可以基于用户的保存操作,生成审批流程对应的xml数据,并将xml数据进行存储,以便于审批流程对应的数据存储和传输。具体可以通过调用modeler.savexml将用户绘制的审批流程保存为后台能够识别的数据。

在本发明实施例中,请参见图4,在根据用户基于所述多个改进bpmn进行的绘图操作生成审批流程之后,该审批流程的实现方法还可以包括:

步骤s150:基于所述xml数据,生成审批流程图。

在生成审批流程之后,还可以进一步进行审批流程的其他制作。例如各节点的注释。首先可以基于上述xml数据,将审批流程图进行展示。具体可以是利用importxml方法将xml数据绘制成审批流程图。

步骤s160:获取所述用户对所述审批流程图的节点注释的标识符。

然后,获取用户对审批流程图的各个节点的注释操作,以及注释操作对应的标识符。上述标识符用于对各个节点进行注释,以便于用户知道节点的用途、条件等。例如标识符可以是审批人员、审批条件等。

步骤s170:将所述标识符以注释的形式展示于所述节点。

在获得上述标识符之后,再利用addlayout方法将用户添加的标识符以注释的形式展示于上述审批流程图中对应的节点中。

从而,可以使得用户在对审批流程进行使用以及进一步的制作开发时,可以便于用户知道各个节点的相关信息,方便用户进行制作开发。

在本发明实施例中,请参见图5,在将标识符以注释的形式展示于节点之后,该审批流程的实现方法还可以包括:

步骤s180:根据所述用户基于所述标识符进行的事件绑定操作,将所述节点进行事件绑定,并将重新生成的所述审批流程的xml数据存储。

可以理解的是,可以对审批流程的各个节点进行事件绑定。例如,用户基于上述标识符,在点击人员节点的时候,可以弹出人员弹窗,此弹窗会拉取出公司的所有人员,让用户进行选择,最后调用getauditor将选择的人员显示在人员节点上。又例如,在点击条件节点的时候可以弹出条件弹窗,给用户进行选择,在什么条件下由哪些人员进行审批,人员和条件可以根据自己的需求进行配置,使用户操作更加方便。

从而,可以完成对审批流程中各个节点的事件绑定。在完成各个节点的事件的绑定后,既可以完成对整个审批流程的制作。并且可以重新生成审批流程的xml数据,并将重新生成的xml数据存储。

在本发明实施例中,该审批流程的实现方法还可以包括:

读取所述xml数据并将所述xml数据传输至后台数据库。

可以理解的是,可以利用savexml方法将用户绘制的审批流程翻译为流程xml数据,即实现对上述xml数据的读取。然后提交至后台的数据库,便于解析xml数据,了解用户的意图,以对审批流程做出相应的处理。另外可以便于后台数据库将xml数据进行存储。

从而,利用本发明第一实施例提供的审批流程的实现方法可以便于普通的用户进行审批流程的制作,而不需要研发人员基于开发工具进行开发。另外,利用该方法开发的审批流程,标准统一和规范,绘制后的数据流也更加规范,便于后台人员进行解析和做进一步的数据处理。另外,建立了审批流程管理的一套规范,便于跨公司之间的合作。

第二实施例

本发明第二实施例提供了一种审批流程的实现装置200,请参见图6,该审批流程的实现装置200包括:工具读取模块210、组件展示模块220以及流程生成模块230。其中,所述工具读取模块210用于读取预先存储的改进bpmn-js工具包,所述改进bpmn-js工具包包括对原始bpmn-js工具包的原始bpmn组件进行内容翻译、数据扩展、图形编辑以及组件筛选后获得的多个改进bpmn组件;所述组件展示模块220用于将所述多个改进bpmn组件进行展示;所述流程生成模块230用于根据用户基于所述多个改进bpmn组件进行的绘图操作,生成审批流程。

在本发明实施例中,所述审批流程的实现装置200还可以包括数据存储模块,所述数据存储模块用于基于所述用户的保存操作生成所述审批流程的xml数据,并将所述xml数据存储。

在本发明实施例中,所述审批流程的实现装置200还可以包括流程图生成模块、注释获取模块以及注释展示模块。其中,所述流程图生成模块用于基于所述xml数据,生成审批流程图;所述注释获取模块用于获取所述用户对所述审批流程图的节点注释的标识符;所述注释展示模块用于将所述标识符以注释的形式展示于所述节点。

在本发明实施例中,所述审批流程的实现装置200还可以包括:事件绑定模块。事件绑定模块用于根据所述用户基于所述标识符进行的事件绑定操作,将所述节点进行事件绑定,并将重新生成的所述审批流程的xml数据存储。

在本发明实施例中,所述审批流程的实现装置200还可以包括:数据传输模块。数据传输模块用于读取所述xml数据并将所述xml数据传输至后台数据库。

第三实施例

本发明第三实施例提供了一种电子设备100,请参见图1,该电子设备100包括存储器102和处理器106,所述存储器102存储有计算机指令,当所述计算机指令由所述处理器106读取并执行时,使所述处理器106执行本发明第一实施例提供的审批流程的实现方法。

第四实施例

本发明第四实施例提供了一种存储介质,所述存储介质中存储有计算机指令,其中,所述计算机指令在被读取并运行时执行本发明第一实施例提供的审批流程的实现方法。

综上所述,本发明实施例提供的审批流程的实现方法、装置、电子设备及存储介质,通过读取预先存储的改进bpmn-js工具包,改进bpmn-js工具包包括对原始bpmn-js工具包的原始bpmn组件进行内容翻译、数据扩展、图形编辑以及组件筛选后获得的多个改进bpmn组件,然后将上述多个改进bpmn组件进行展示,最后根据用户基于多个改进bpmn组件进行的绘图操作,生成审批流程。该审批流程的实现方法、装置、电子设备及存储介质通过利用改进后的改进bpmn-js工具包进行审批流程的制作,由于改进bpmn-js工具包包括有各种用户需要的流程组件,从而可以便于普通用户进行审批流程的制作。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1