Flowable流程设计器是一个基于web的设计器,可以用于创建、编辑和管理Flowable工作流程。它可以轻松地定义和设计复杂的工作流程,并且提供了完全自定义和自包含的功能组件,使工作流程可定制化。本文将从教程、美化、源码修改、表单设计器、设计器集成、在线设计器、子流程、vue flowable 设计器和自定义流程设计器等多个方面对Flowable流程设计器进行详细阐述。
一、Flowable流程设计器教程
在使用Flowable流程设计器之前,我们需要先学会如何使用它。下面是一些常用的使用方法:
1、创建Flowable流程
创建一个新的流程定义非常简单。只需按以下步骤操作:
// 先获取流程引擎实例
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
// 获取repositoryService,然后调用createDeployment()方法创建一个新部署
RepositoryService repositoryService = processEngine.getRepositoryService();
// 创建一个bpmn-model的流程模型
BpmnModel model = new BpmnModel();
// 获取流程图的实例
Process process = new Process();
// 设置流程图id和name
process.setId("myProcess");
process.setName("My Process");
// 把流程图实例加入到流程模型中
model.addProcess(process);
// 部署流程
Deployment deployment = repositoryService.createDeployment()
.addBpmnModel("myProcess.bpmn", model)
.name("流程定义名称")
.deploy();
// deployment.getId()返回新流程定义的ID
2、在Flowable流程设计器中绘制流程
在Flowable流程设计器中绘制流程也非常简单。只需遵循以下步骤:
首先,要能够使用Flowable Designer,您需要安装Eclipse并从Eclipse市场安装Flowable Designer插件。完成安装并启动Eclipse后:
- 1. 创建Flowable项目.
- 2. 在项目中右键选择 "New ▸ Other", 在弹出的 "New" 窗口中选择 "Flowable Diagram".
- 3. 输入文件名并点击 “Finish”。 在打开的Flowable设计器中开始绘图。
- 4. 编辑保存后,会生成xml文件,将其加入src/main/resources/processes/文件夹即可。
3、运行Flowable流程
启动活动流程实例与启动BPMN流程实例相似。只需要使用以下方法:
// 先获取流程引擎实例
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
// 获取runtimeService
RuntimeService runtimeService = processEngine.getRuntimeService();
// 根据流程定义key,启动流程实例
ProcessInstance proInst = runtimeService
.startProcessInstanceByKey("myProcess");
二、Flowable设计器美化
美化Flowable流程设计器界面可以提升用户体验,使其更加易于操作和使用。下面是一些常用的美化方法:
1、更改设计器主题风格
Flowable设计器提供了三种主题风格:默认、清新蓝和雪山白。可以使用以下代码块中的样式表将风格更改为清新蓝:
<head>
<link rel="stylesheet" href="static/flowable-modeler/css/styles.min.css">
<link rel="stylesheet" href="static/flowable-modeler/css/themes/theme-fresh.css">
</head>
2、更改设计器图标
项目中必须包含Flowable设计器所用的Font Awesome 4.7字体,并且必须是正确配置的。只需更改以下代码块中的font-family即可修改字体样式:
.fa {
font-size: 16px;
line-height: 1;
display: inline-block;
font-family: 'FontAwesome', serif;
}
三、Flowable流程设计器dragon
Flowable Dragon是一个Flowable流程设计器的扩展,它允许自定义和使用自己的表单UI组件。下面是一些常用的方法:
1、使用Flowable Dragon创建UI组件
可以创建新的UI组件,也可以使用现有的UI组件。下面是一个自定义的Email组件的示例:
<div class="app-email-property">
<span>Enter Email Address:</span>
<input ng-model="property.value">
</div>
2、使用Flowable Dragon预定义的UI组件
Flowable Dragon还提供许多常见的UI组件,例如日期选择器、文件上传组件、邮件组件等。可以使用以下代码块创建文件上传组件:
<div>
<span>Select file to upload:</span>
<input type="file" name="files[]" multiple>
</div>
四、Flowable流程设计器源码修改
通过更改Flowable流程设计器的源代码,可以实现各种自定义功能。下面是一些例子:
1、更改设计器UI
使用CSS或JavaScript等工具可以更改设计器的界面布局、外观、样式等特性。例如,可以使用以下代码块修改工具栏按钮的CSS:
/* 更改工具栏按钮 */
.toolbar .toggle-membership, .process-definition-toggle {
padding: 10px;
margin-bottom: 5px;
background-color: #00a8ff;
color: #fff;
border: none;
border-radius: 3px;
font-size: 1.2em;
text-decoration: none;
}
2、更改设计器图标
可以更改设计器中使用的所有图标,包括工具栏、流程图、节点图标等。可以使用以下代码块来更改所有图标的样式:
/* 更改所有图标 */
.fa {
font-size: 16px;
line-height: 1;
display: inline-block;
font-family: 'FontAwesome', serif;
}
五、Flowable表单设计器
Flowable表单设计器提供了一个方便创建表单的可视化界面。本节将介绍一些常用的功能和操作:
1、在设计器中创建表单
要在设计器中创建表单,请按以下步骤操作:
- 1. 点击 “Forms” 标签选项卡。
- 2. 在左侧窗格中选择所需的表单。选择后,设计器将显示表单设计器。
- 3. 做出所需的更改,然后点击 “Save” 按钮保存表单。
2、添加字段和选项
可以在设计器中添加各种字段,如文本输入框、下拉列表等,并自定义选项和顺序。以下是添加简单文本框的示例:
<input type="text" name="firstName" label="First Name" required="true">
3、设置表单属性
还可以设置一些与表单相关的属性,例如表单名称、描述等。以下是设置表单名称的示例:
<form name="registrationForm">
<h2>Registration Form</h2>
</form>
六、Flowable设计器集成
Flowable设计器可以轻松集成到其他应用程序中。下面是一些常用的集成选项:
1、使用Flowable设计器作为iframe嵌入
可以通过将Flowable设计器作为iframe嵌入到主应用程序中来集成Flowable Designer。以下是一个基本的嵌入示例:
<iframe src="static/flowable-idm/app.html"></iframe>
2、使用JavaScript API集成Flowable设计器
Flowable包含JavaScript API,使您可以从主应用程序中对设计器进行完全的控制。以下是一些常见的使用示例:
var modelId = "myProcess";
var designUrl = "/flowable-designer/designer.html?modelId=" + modelId;
// 打开设计器
flowableModeler.openModeler({url: designUrl});
// 保存模型
var bpmnXml = flowableModeler.getModelXml();
$.ajax({
url: "/api/model/" + modelId + "/save",
method: "PUT",
data: bpmnXml
});
七、Flowable在线设计器
Flowable在线设计器允许您创建和设计Flowable BPMN工作流程,而无需安装任何软件或插件。下面是一些常见的使用方法和选项:
1、使用默认编辑器模板创建新模型
可以使用Flowable在线设计器的默认模板来创建新模型。以下是一个常见的使用示例:
// 创建新模型
$.ajax({
url: "/model/create",
method: "POST",
data: {
name: "My Model"
},
success: function(response) {
// 跳转到编辑器
var modelId = response.id;
window.location.href = "/editor.html?modelId=" + modelId;
}
});
2、从BPMN XML导入模型
可以从现有的BPMN XML模型导入模型。以下是一个常见的使用示例:
// 导入模型
$.ajax({
url: "/model/import",
method: "POST",
data: {
name: "My Model",
bpmnXml: "..."
},
success: function(response) {
// 跳转到编辑器
var modelId = response.id;
window.location.href = "/editor.html?modelId=" + modelId;
}
});
八、Flowable子流程
Flowable允许定义复杂的工作流程,其中一个流程可以由多个子流程构成。子流程可以包含在主流程中,因此可以根据需要多次重用。以下是一些常见的使用方法:
1、在主流程中使用子流程
可以使用以下代码块在主流程中调用子流程:
<bpmn:callActivity id="subProcess" name="Sub process">
<bpmn:extensionElements>