CN110221819B - 一种流程引擎的模块化扩展方法、电子设备及存储介质 - Google Patents

一种流程引擎的模块化扩展方法、电子设备及存储介质 Download PDF

Info

Publication number
CN110221819B
CN110221819B CN201910323237.6A CN201910323237A CN110221819B CN 110221819 B CN110221819 B CN 110221819B CN 201910323237 A CN201910323237 A CN 201910323237A CN 110221819 B CN110221819 B CN 110221819B
Authority
CN
China
Prior art keywords
link
expanded
links
configuration
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910323237.6A
Other languages
English (en)
Other versions
CN110221819A (zh
Inventor
颜晓强
张嘉贤
杨志成
曹雄
伍建辉
樊冠群
郑小微
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kaitong Technology Co ltd
Original Assignee
Kaitong Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kaitong Technology Co ltd filed Critical Kaitong Technology Co ltd
Priority to CN201910323237.6A priority Critical patent/CN110221819B/zh
Publication of CN110221819A publication Critical patent/CN110221819A/zh
Application granted granted Critical
Publication of CN110221819B publication Critical patent/CN110221819B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种流程引擎的模块化扩展方法,其通过设置系统扩展规范,然后根据系统扩展规范得出待扩展环节的开发包,并将开发包的每个文件对应放置于对应目录下,进而使得当打开流程设计器时,待扩展环节在流程设计器的对应位置中显示;当设计流程图调用待扩展环节时,获取待扩展环节的配置页面并向开发人员显示,以及获取用户输入配置页面的配置参数存储于流程引擎中,供流程引擎内部调用。本发明可保证在不改变原有流程引擎核心代码的基础上,快速扩展流程引擎的自定义环节。本发明还提供了一种电子设备及计算机可读存储介质。

Description

一种流程引擎的模块化扩展方法、电子设备及存储介质
技术领域
本发明涉及流程引擎的开发,尤其涉及一种流程引擎的模块化扩展方法、电子设备及存储介质。
背景技术
目前,流程引擎技术相对较为成熟,但是其扩张能力各有不同。在实际的应用过程中,用户的需求往往都是变化和各不相同的,为了适应不同用户的需求,时常需要修改流程引擎的核心代码,将用户的需求耦合到现有的流程应中,来增加需求,这样导致流程引擎核心代码无法长期保持稳定。另外,每次增加需求时,项目开发时都要做定制化的修改,导致版本的无序膨胀,从而加大了流程引擎的维护成本。
发明内容
为了克服现有技术的不足,本发明的目的之一在于提供一种流程引擎的模块化扩展方法,其能够解决现有技术中项目开发周期长、扩展性差等问题。
本发明的目的之二在于提供一种电子设备,其能够解决现有技术中项目开发周期长、扩展性差等问题。
本发明的目的之三在于提供一种计算机可读存储介质,其能够解决现有技术中项目开发周期长、扩展性差等问题。
本发明的目的之一采用如下技术方案实现:
一种流程引擎的模块化扩展方法,包括以下步骤:
环节扩展步骤:根据系统扩展规范得出待扩展环节的开发包,并将开发包的每个文件对应放置于对应目录下,进而使得当打开流程设计器时,待扩展环节在流程设计器的对应位置中显示;
环节运行步骤:当设计流程图调用待扩展环节时,获取待扩展环节的配置页面并向开发人员显示,以及获取用户输入配置页面的配置参数存储于流程引擎中,供流程引擎内部调用;
其中,系统扩展规范包括以下规定:
开发包的文件包括:文件夹:crystalScene、defaultScene、ftScene以及page,文件:x.java、config.txt,其中x表示待扩展环节的名称;
其中:config.txt为配置文件,规定了以下属性:
rowNo配置属性:代表序号,即在流程设计器中显示待扩展环节时按该序号的顺序显示,如果序号相同则按label排序;
clazz配置属性:代表入口类,待扩展环节的扩展逻辑都由该入口类实现;该入口类实现接口为util.commonModule.dwf.deve.designer.component.Component,其具体实现由x.java实现;
id配置属性:表示待扩展环节的唯一编码标识;
label配置属性:表示待扩展环节在流程设计器上的中文名称;
icon配置属性:表示待扩展环节在流程设计器上显示的图标;
desc配置属性:表示鼠标停留在待扩展环节时,流程设计器上的显示说明;
x.java文件,具体实现方法包括:设置配置文件信息、设置配置文件内容、生成id、取得环节默认信息、生成工具栏节点、环节支持的事件体、查询环节实例数据、查询条件、保存环节实例数据、环节实例数据、取得环节中定义的模板页面、取得环节右键菜单、取得图片内容,以及获取待扩展环节在流程运行时中的实例对象;
文件夹:page包含流程图设计时待扩展环节所需要显示的配置页面,该配置页面分别为index.ftl配置页面和base.ftl基础信息页面;
文件夹:crystalScene、defaultScene、ftScene均为待扩展环节在流程设计器中显示的页面风格样式的资源目录。
进一步地,所述index.ftl配置页面和base.ftl基础信息页面中均定义如下全局变量:页面的根路径、样式颜色、流程唯一标识、环节类型、环节唯一标识、几何图形类型和待扩展环节的定义id。
进一步地,所述index.ftl配置页面、base.ftl基础信息页面的格式均采用ftl模板文件格式。
进一步地,环节扩展步骤包括:首先根据业务需求得出待扩展环节的类型,然后根据系统扩展规范得出待扩展环节的开发包。
进一步地,所述待扩展环节的类型为用户级扩展或者系统级扩展;系统级扩展的开发包放置于lib目录下的dwfComponent/base目录中,用户级扩展规定放置在lib目录下的dwfComponent/custom目录中。
进一步地,config.txt的文件格式为json格式。
本发明的目的之二采用如下技术方案实现:
一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明目的之一所述一种流程引擎的模块化扩展方法的步骤。
本发明的目的之三采用如下技术方案实现:
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如本发明目的之一所述一种流程引擎的模块化扩展方法的步骤。
相比现有技术,本发明的有益效果在于:
本发明通过定义扩展规范,流程开发人员只需通过该扩展规范扩展开发对应的流程环节,并且将对应的开发文件放置于对应的目录下,即可实现扩展的流程环节在流程设计器中显示,流程开发人员在设计流程时,只需要根据调用其他流程环节一样调用扩展的流程环节,并进行相应的配置即可完成流程模块化的扩展开发,不需要对原有的流程引擎的核心代码进行修改,保证了流程代码的版本稳定,降低后期维护成本。
附图说明
图1为本发明提供的流程引擎的模块化扩展方法中流程环节在流程设计器中的显示示意图;
图2为本发明提供的流程环节所放置的目录示意图;
图3为本发明提供的流程环节的开发包所包括的文件目录示意图;
图4为本发明提供的“服务活动”环节运行时的配置页面示意图。
具体实施方式
下面,结合附图以及具体实施方式,对本发明做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
实施例一:
针对现有技术中,由于用户的个性化需求导致破坏流程引擎核心代码的稳定性的问题,本发明提供了一种流程引擎的模块化扩展系统,通过定义流程引擎的扩展规范,可以实现用户的个性化需求;同时,保证在不改变流程引擎核心代码的基础上,通过添加模块化代码实现相应的流程环节的扩展,使得流程引擎核心代码版本稳定,降低后期维护成本,并且还可大大提高流程引擎的开发效率。
本发明中流程引擎的流程环节包括两种,分别为:系统级扩展环节和用户级扩展环节,系统级扩展环节是指流程引擎的官方定义的流程环节,而用户级扩展环节是指用户自定义的流程环节。
开发人员根据扩展规范开发得出对应的流程环节,比如系统级扩展环节或用户级扩展环节时,只需要将开发的每个文件放置于流程设计器的对应目录下。当流程开发人员打开流程设计器时,扩展的流程环节就会在流程设计器的界面中进行显示。如图1所示,对于系统级扩展的流程环节,在流程设计器左侧的“流程部件”中显示,用户级扩展的流程环节将在“自定义部件”中显示,这样流程开发人员就可以在设计流程图时直接选择对应的流程环节进行使用。
例如针对用户级扩展环节:“公共审核”,开发人员只需根据本发明提供的扩展规范开发出该流程环节对应的代码文件,然后将代码文件放置于流程设计器源码安装包的对应目录下,“公共审核”就会出现在流程设计器的“自定义部件”中。
在使用时,流程开发人员只需将该“公共审核”拖入到设计的流程图中并用线,将该环节与其他环节连接,即可实现该环节与原有设计的流程图中的其他环节进行融合,实现流程的设计开发。
本发明提供的扩展规范,不仅规定了流程环节的定义页面,同时还规定了流程环节的显示图片、流程环节的实例类名等等。
其中,流程环节的定义页面可以定义用户页面的url地址。
流程环节的实例类名,是用来负责控制流程引擎推动该流程环节的行为方式;并且系统还规定了控制流程引擎推动流程环节的默认行为方式。比如有特殊推动需求时,需要继承系统环节的实例基类,实现个性化推动逻辑。
本发明以系统级扩展环节,比如“服务活动”环节为例来说明:
在当今系统逐步微服务化趋势背景下,流程以传统规范企业人员的工作流程方式,逐步转变为人员和微服务协同工作的方式。也就是一个流程中既有人工处理环节,也有调用微服务处理环节,实现了人员处理和微服务调用的统一编排。比如“服务活动”这个环节,其用于实现人员处理和微服务调用的流程快速编排,但是现有的流程环节的扩展需要专业的流程开发人员参与,要求流程开发人员专业性强,同时流程环节的开发周期长。
通过本发明对“服务活动”这一环节进行扩展时,可根据用户随时可变的业务需求进行快速开发,大大降低编排流程的技术门槛;同时,该环节的扩展不需要修改流程引擎的核心代码,保证了原有流程引擎核心代码的版本稳定性。
另外,本发明还根据扩展环节的不同,设定了不同类型的扩展环节所防止的文件夹,扩展环节开发后的代码文件放置在不同的文件夹内,进而可实现流程设计器中显示扩展环节的中环节的显示。如图2所示,系统级扩展环节,规定放置在lib目录下的dwfComponent/base目录中;用户级扩展环节,规定放置在lib目录下的dwfComponent/custom目录中。
如图3所示,本发明还给出流程环节的开发包所涉及到文件夹以及文件内容:
其中,文件包括config.txt,是扩展的流程环节的配置文件,其实现如下:
{
"rowNo":"4",
"clazz":"util.commonModule.dwf.deve.designer.component.base.act.gateway.Gateway",
"id":"base.act.gateway",
"label":"关口",
"icon":"act.png",
"desc":"关口"
}
其中,rowNo配置属性:代表序号,即在流程设计器中显示流程环节时按该顺序显示,如果序号相同则按label排序。
clazz配置属性:代表入口类,流程环节的扩展逻辑由该类实现,该类实现的接口为util.commonModule.dwf.deve.designer.component.Component,其具体实现由x.java文件实现。其中,x表示流程环节的名称,比如gateway.java。
本发明还给出了该类的具体实现的方法:
public Config getConfig();
/**
*设置配置文件信息
*
*@param config
*/
public void setConfig(Config config);
/**
*设置配置文件内容
*
*@param context
*/
public void init(String context);
/**
*生成id
*
*@param length
*@return
*/
public String genIds(int length);
/**
*取得环节默认信息
*
*@return
*/
public Map<String,Object>getCompDefaultInfo();
/**
*生成工具栏节点
*
*@return
*/
public Map<String,Object>getToolbarNode();
/**
*环节支持的事件体
*
*@return
*/
public Map<String,String>events();
/**
*查询环节实例数据
*
*@param params
*查询条件
*@return
*/
public List find(Map params);
/**
*保存环节实例数据
*
*@param map
*环节实例数据
*/
public List<Record>save(Map map);
/**
*取得环节中定义的模板页面
*
*@param request
*@param ftlUrl
*@return
*/
public String getPage(Map params,String ftlUrl);
/**
*取得环节右键菜单
*
*@return
*/
public List<Map<String,String>>getMenu();
/**
*取得图片内容
*
*@return
*/
public List<byte[]>getImage(String imgName);
/**
*获取环节定义在流程运行时中的实例对象
*@return
*/
public Instance getInstance();
id配置属性:表示流程环节的唯一编码标识;
label配置属性:表示流程环节在流程设计器上的中文名称;
icon配置属性:表示流程环节在流程设计器上显示的图标;
desc配置属性:表示鼠标停留在流程环节时,流程设计器上的显示说明。
文件夹:page,包含在流程图设计时,流程环节所需要展现的配置页面。该配置页面采用ftl模板格式文件,采用freemarker模板引擎解析,分别为index.ftl配置页面和base.ftl基础信息页面。
这两个文件中分别均定义了若干全局变量,如:
${request.contextPath}页面的根路径、
${color}样式颜色、
${params.I_WFID}流程唯一标识、
${params.I_TYPE}该环节类型、
${params.id}该环节唯一标识、
${params.pObjectType}几何图形类型、
${params.comp_id}自定义扩展环节的定义id。
本发明对于配置页面,通过采用ftl模板文件格式,而不采用jsp或html文件格式,在开发时,可将配置页面与其他文件一起打包,并且还具备页面动态解析的能力。
文件夹:crystalScene、defaultScene、ftScene,均是用来在流程图设计时,所展示的页面风格样式的资源目录,比如图标显示。对于图标,其名称中包含数字,该数字代表流程环节处于不同状态下所需要显示的图标。
流程开发人员可以通过上述扩展规范开发、以及业务需求开发得出对应的流程环节,比如开发“服务活动”这一环节,然后将其开发的文件放置于对应的目录下。当开发人员打开流程设计器时进行流程设计,“服务活动”环节就会在流程设计器的对应位置显示出来,供流程设计人员调用。
流程开发人员设计流程图时,通过调用该“服务活动”来实现,与其他环节之间的连接,比如将“服务活动”环节拖入到流程设计框内,并通过线将“服务活动”与其他环节连接。
当调用“服务活动”环节时,如图4所示,会向用户提供了配置页面,该配置页面支持用户填写相应的配置参数数据,该配置参数数据比如包括服务地址、服务入参、服务出参、头部数据等。
再比如,流程设计时,当“订单审核”这一环节配置通过后,调用“查询电路信息”环节,就会向用户显示一配置页面,并接收用户输入的服务入参,然后系统就会将服务入参进行组装,并将其传递给该环节所对应的微服务,以及接收微服务返回的数据并按照出参配置组装出出参数据,并返回给流程引擎,供引擎内部使用。
另外,该配置页面实现以ftl模板文件实现,内容根据需求进行填写;并且必须将其放置在对应的文件夹中;配置数据采用hibiermate bean的方式存储。
通过上述方式,在流程设计器中扩展出比如“服务活动”环节,并配置保存特定的配置数据,完成“服务活动”环节的扩展调用。
也即是说在实际流程开发时,流程开发人员根据扩展规范进行对应流程环节的开发,然后将开发完成的代码文件分别放置于对应的目录内;然后再启动流程设计器就可以在流程设计器中显示对应的扩展环节,流程开发人员就可以在流程设计器中将扩展环节拖入到对应的流程设计图中,来完成实现流程图的设计。
本发明还具备技术效果:
1、流程环节的配置页面采用ftl模板文件格式,而不是采用常规的JSP或HTML文件格式。通过采用FTL模板文件格式,可以将该配置页面与其他的文件一起打包,并且该配置页面具备了动态解析的能力。
2、本发明通过采用一个配置文件、一个Java实现类、两个ftl模板文件以及若干个图片就可以完成一个扩展环节的开发,大大提高了流程扩展的效率。
3、对于每个自定义扩展环节所需要的文件全部包含在一个文件夹内,方便打包;不同的自定义扩展环节的文件之间不会产生混乱。
4、对于每个开发好的自定义扩展环节打包后只需放入到特定目录中,就可以立即生效,不需要进行额外配置,方便操作。
实施例二:
本发明还提供了一种电子设备,其包括存储器、处理器以及存储在存储器上并可在处理上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
环节扩展步骤:根据系统扩展规范得出待扩展环节的开发包,并将开发包的每个文件对应放置于对应目录下,进而使得当打开流程设计器时,待扩展环节在流程设计器的对应位置中显示;
环节运行步骤:当设计流程图调用待扩展环节时,获取待扩展环节的配置页面并向开发人员显示,以及获取用户输入配置页面的配置参数存储于流程引擎中,供流程引擎内部调用;
其中,系统扩展规范包括以下规定:
开发包的文件包括:文件夹:crystalScene、defaultScene、ftScene以及page,文件:x.java、config.txt,其中x表示待扩展环节的名称;
其中:config.txt为配置文件,规定了以下属性:
rowNo配置属性:代表序号,即在流程设计器中显示待扩展环节时按该序号的顺序显示,如果序号相同则按label排序;
clazz配置属性:代表入口类,待扩展环节的扩展逻辑都由该入口类实现;该入口类实现接口为util.commonModule.dwf.deve.designer.component.Component,其具体实现由x.java实现;
id配置属性:表示待扩展环节的唯一编码标识;
label配置属性:表示待扩展环节在流程设计器上的中文名称;
icon配置属性:表示待扩展环节在流程设计器上显示的图标;
desc配置属性:表示鼠标停留在待扩展环节时,流程设计器上的显示说明;
x.java文件,具体实现方法包括:设置配置文件信息、设置配置文件内容、生成id、取得环节默认信息、生成工具栏节点、环节支持的事件体、查询环节实例数据、查询条件、保存环节实例数据、环节实例数据、取得环节中定义的模板页面、取得环节右键菜单、取得图片内容,以及获取待扩展环节在流程运行时中的实例对象;
文件夹:page包含流程图设计时待扩展环节所需要显示的配置页面,该配置页面分别为index.ftl配置页面和base.ftl基础信息页面;
文件夹:crystalScene、defaultScene、ftScene均为待扩展环节在流程设计器中显示的页面风格样式的资源目录。
进一步地,所述index.ftl配置页面和base.ftl基础信息页面中均定义如下全局变量:页面的根路径、样式颜色、流程唯一标识、环节类型、环节唯一标识、几何图形类型和自定义扩展环节的定义id。
进一步地,所述index.ftl配置页面、base.ftl基础信息页面的格式均采用ftl模板文件格式。
进一步地,环节扩展步骤包括:首先根据业务需求得出待扩展环节的类型,然后根据系统扩展规范得出待扩展环节的开发包。
进一步地,所述待扩展环节的类型为用户级扩展或者系统级扩展;系统级扩展的开发包放置于lib目录下的dwfComponent/base目录中,用户级扩展规定放置在lib目录下的dwfComponent/custom目录中。
进一步地,config.txt的文件格式为json格式。
实施例三:
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
环节扩展步骤:根据系统扩展规范得出待扩展环节的开发包,并将开发包的每个文件对应放置于对应目录下,进而使得当打开流程设计器时,待扩展环节在流程设计器的对应位置中显示;
环节运行步骤:当设计流程图调用待扩展环节时,获取待扩展环节的配置页面并向开发人员显示,以及获取用户输入配置页面的配置参数存储于流程引擎中,供流程引擎内部调用;
其中,系统扩展规范包括以下规定:
开发包的文件包括:文件夹:crystalScene、defaultScene、ftScene以及page,文件:x.java、config.txt,其中x表示待扩展环节的名称;
其中:config.txt为配置文件,规定了以下属性:
rowNo配置属性:代表序号,即在流程设计器中显示待扩展环节时按该序号的顺序显示,如果序号相同则按label排序;
clazz配置属性:代表入口类,待扩展环节的扩展逻辑都由该入口类实现;该入口类实现接口为util.commonModule.dwf.deve.designer.component.Component,其具体实现由x.java实现;
id配置属性:表示待扩展环节的唯一编码标识;
label配置属性:表示待扩展环节在流程设计器上的中文名称;
icon配置属性:表示待扩展环节在流程设计器上显示的图标;
desc配置属性:表示鼠标停留在待扩展环节时,流程设计器上的显示说明;
x.java文件,具体实现方法包括:设置配置文件信息、设置配置文件内容、生成id、取得环节默认信息、生成工具栏节点、环节支持的事件体、查询环节实例数据、查询条件、保存环节实例数据、环节实例数据、取得环节中定义的模板页面、取得环节右键菜单、取得图片内容,以及获取待扩展环节在流程运行时中的实例对象;
文件夹:page包含流程图设计时待扩展环节所需要显示的配置页面,该配置页面分别为index.ftl配置页面和base.ftl基础信息页面;
文件夹:crystalScene、defaultScene、ftScene均为待扩展环节在流程设计器中显示的页面风格样式的资源目录。
进一步地,所述index.ftl配置页面和base.ftl基础信息页面中均定义如下全局变量:页面的根路径、样式颜色、流程唯一标识、环节类型、环节唯一标识、几何图形类型和自定义扩展环节的定义id。
进一步地,所述index.ftl配置页面、base.ftl基础信息页面的格式均采用ftl模板文件格式。
进一步地,环节扩展步骤包括:首先根据业务需求得出待扩展环节的类型,然后根据系统扩展规范得出待扩展环节的开发包。
进一步地,所述待扩展环节的类型为用户级扩展或者系统级扩展;系统级扩展的开发包放置于lib目录下的dwfComponent/base目录中,用户级扩展规定放置在lib目录下的dwfComponent/custom目录中。
进一步地,config.txt的文件格式为json格式。
上述实施方式仅为本发明的优选实施方式,不能以此来限定本发明保护的范围,本领域的技术人员在本发明的基础上所做的任何非实质性的变化及替换均属于本发明所要求保护的范围。

Claims (8)

1.一种流程引擎的模块化扩展方法,其特征在于,包括以下步骤:
环节扩展步骤:根据系统扩展规范得出待扩展环节的开发包,并将开发包的每个文件对应放置于对应目录下,进而使得当打开流程设计器时,待扩展环节在流程设计器的对应位置中显示;
环节运行步骤:当设计流程图调用待扩展环节时,获取待扩展环节的配置页面并向开发人员显示,以及获取用户输入配置页面的配置参数存储于流程引擎中,供流程引擎内部调用;
其中,系统扩展规范包括以下规定:
开发包的文件包括:文件夹:crystalScene、defaultScene、ftScene以及page,文件:x.java、config.txt,其中x表示待扩展环节的名称;
其中:config.txt为配置文件,规定了以下属性:
rowNo配置属性:代表序号,即在流程设计器中显示待扩展环节时按该序号的顺序显示,如果序号相同则按label排序;
clazz配置属性:代表入口类,待扩展环节的扩展逻辑都由该入口类实现;该入口类实现接口为util.commonModule.dwf.deve.designer.component.Component,其具体实现由x.java实现;
id配置属性:表示待扩展环节的唯一编码标识;
label配置属性:表示待扩展环节在流程设计器上的中文名称;
icon配置属性:表示待扩展环节在流程设计器上显示的图标;
desc配置属性:表示鼠标停留在待扩展环节时,流程设计器上的显示说明;
x.java文件,具体实现方法包括:设置配置文件信息、设置配置文件内容、生成id、取得环节默认信息、生成工具栏节点、环节支持的事件体、查询环节实例数据、查询条件、保存环节实例数据、环节实例数据、取得环节中定义的模板页面、取得环节右键菜单、取得图片内容,以及获取待扩展环节在流程运行时中的实例对象;
文件夹:page包含流程图设计时待扩展环节所需要显示的配置页面,该配置页面分别为index.ftl配置页面和base.ftl基础信息页面;
文件夹:crystalScene、defaultScene、ftScene均为待扩展环节在流程设计器中显示的页面风格样式的资源目录。
2.根据权利要求1所述一种流程引擎的模块化扩展方法,其特征在于,所述index.ftl配置页面和base.ftl基础信息页面中均定义如下全局变量:页面的根路径、样式颜色、流程唯一标识、环节类型、环节唯一标识、几何图形类型和自定义扩展环节的定义id。
3.根据权利要求2所述一种流程引擎的模块化扩展方法,其特征在于,所述index.ftl配置页面、base.ftl基础信息页面的格式均采用ftl模板文件格式。
4.根据权利要求1所述一种流程引擎的模块化扩展方法,其特征在于,环节扩展步骤包括:首先根据业务需求得出待扩展环节的类型,然后根据系统扩展规范得出待扩展环节的开发包。
5.根据权利要求4所述一种流程引擎的模块化扩展方法,其特征在于,所述待扩展环节的类型为用户级扩展或者系统级扩展;系统级扩展的开发包放置于lib目录下的dwfComponent/base目录中,用户级扩展规定放置在lib目录下的dwfComponent/custom目录中。
6.根据权利要求1所述一种流程引擎的模块化扩展方法,其特征在于,config.txt的文件格式为json格式。
7.一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于:所述处理器执行所述程序时实现如权利要求1-6中任意一项所述一种流程引擎的模块化扩展方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1-6中任意一项所述一种流程引擎的模块化扩展方法的步骤。
CN201910323237.6A 2019-04-22 2019-04-22 一种流程引擎的模块化扩展方法、电子设备及存储介质 Active CN110221819B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910323237.6A CN110221819B (zh) 2019-04-22 2019-04-22 一种流程引擎的模块化扩展方法、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910323237.6A CN110221819B (zh) 2019-04-22 2019-04-22 一种流程引擎的模块化扩展方法、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN110221819A CN110221819A (zh) 2019-09-10
CN110221819B true CN110221819B (zh) 2022-12-16

Family

ID=67819962

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910323237.6A Active CN110221819B (zh) 2019-04-22 2019-04-22 一种流程引擎的模块化扩展方法、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN110221819B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112764736B (zh) * 2020-12-30 2021-08-10 北京宇信科技集团股份有限公司 一种web端流程图建模方法、设备和系统
CN112765176B (zh) * 2021-01-22 2023-02-03 浪潮通用软件有限公司 一种微服务模式下属性扩展方法、装置及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102279945A (zh) * 2010-06-09 2011-12-14 中国电信股份有限公司 基于soa的业务级流程定制平台和方法
CN104240028A (zh) * 2014-09-11 2014-12-24 浪潮软件集团有限公司 一种基于即时环节配置工作流的方法
CN105893055A (zh) * 2016-04-22 2016-08-24 广东凯通软件开发有限公司 流程引擎平台化触发方法
CN105989440A (zh) * 2015-02-12 2016-10-05 杨波 一种流程自定义的处理方法及其工作流引擎
CN106548326A (zh) * 2016-11-04 2017-03-29 广东亿迅科技有限公司 衔接受理场景和办理场景的工作流引擎的方法及其系统
CN107577515A (zh) * 2017-10-10 2018-01-12 北京小度信息科技有限公司 可视化组件的扩展方法、装置、电子设备及存储介质
CN108196832A (zh) * 2018-01-09 2018-06-22 安徽小马创意科技股份有限公司 一种实现使微信小程序支持自定义组件式开发的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10296297B2 (en) * 2013-08-09 2019-05-21 Oracle International Corporation Execution semantics for sub-processes in BPEL
CN105760180B (zh) * 2016-03-23 2019-01-25 浪潮天元通信信息系统有限公司 一种工作流引擎的扩展开发方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102279945A (zh) * 2010-06-09 2011-12-14 中国电信股份有限公司 基于soa的业务级流程定制平台和方法
CN104240028A (zh) * 2014-09-11 2014-12-24 浪潮软件集团有限公司 一种基于即时环节配置工作流的方法
CN105989440A (zh) * 2015-02-12 2016-10-05 杨波 一种流程自定义的处理方法及其工作流引擎
CN105893055A (zh) * 2016-04-22 2016-08-24 广东凯通软件开发有限公司 流程引擎平台化触发方法
CN106548326A (zh) * 2016-11-04 2017-03-29 广东亿迅科技有限公司 衔接受理场景和办理场景的工作流引擎的方法及其系统
CN107577515A (zh) * 2017-10-10 2018-01-12 北京小度信息科技有限公司 可视化组件的扩展方法、装置、电子设备及存储介质
CN108196832A (zh) * 2018-01-09 2018-06-22 安徽小马创意科技股份有限公司 一种实现使微信小程序支持自定义组件式开发的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
以环节为核心的轻量级工作流引擎研究;周亮等;《江苏城市规划》;20101231(第06期);第31-35页 *

Also Published As

Publication number Publication date
CN110221819A (zh) 2019-09-10

Similar Documents

Publication Publication Date Title
CN103955364B (zh) 一种适用于手机的前端组件方法
CN1811702B (zh) 用于向门户服务器应用环境自动部署门户应用的系统和方法
CN111241454B (zh) 一种生成网页代码的方法、系统和装置
US8132149B2 (en) System and method for applying development patterns for component based applications
JP4643931B2 (ja) 外部プログラムに基づくテーマを使用するWebページレンダリング機構
US7913225B2 (en) Error handling using declarative constraints in a graphical modeling tool
US20060236302A1 (en) System and method for unified visualization of two-tiered applications
US20060236307A1 (en) System and method for transformation of wireless application definition to simplified form
CN104731589A (zh) 用户界面的自动生成方法及自动生成装置
CN105404507A (zh) 一种流程模板的构建方法及系统
EP1703379A1 (en) System and method for applying development patterns for component based applications
CN104484216A (zh) 服务接口文档和在线测试工具生成方法、装置
CN113076096B (zh) 一种桌面应用程序开发方法、装置、设备及存储介质
CN112650533B (zh) 接口文档的生成方法、装置和终端设备
CN110221819B (zh) 一种流程引擎的模块化扩展方法、电子设备及存储介质
IL188663A (en) Web page rendering priority mechanism
CN108279882B (zh) 框架生成方法、装置、设备及计算机可读介质
JP2009245441A (ja) コンポーネント基盤環境下で拡張されたメタデータを利用したソフトウェア開発方法及びその開発システム
CN112214218A (zh) 一种高性能高效率的Sketch组件库生成和管理方案及系统
CN102253986A (zh) 提高多终端网页显示效果的方法和装置
CN111488144B (zh) 一种数据处理方法以及设备
CN116466915A (zh) 一种基于MVP架构的iOS开发框架构建方法和装置
CN116400914A (zh) 一种基于数据模型快速构建web应用的方法
CN113791714A (zh) 一种软件系统图标库的方法
CA2543898C (en) System and method for unified visualization of two-tiered applications

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant