flowable 三種方式部署流程
阿新 • • 發佈:2022-05-30
/**部署流程定義(根據ui.modeler的 modelId部署)
* @param modelId 模型ID
* @from fhadmin.cn
*/
protected String deploymentProcessDefinitionFromUIModelId(String modelId) throws Exception{
Model model = modelService.getModel(modelId);
BpmnModel bpmnModel = modelService.getBpmnModel(model);
Deployment deployment = repositoryService.createDeployment()
.name(model.getName())
.addBpmnModel(model.getKey() + ".bpmn", bpmnModel).deploy();
return deployment.getId(); //部署ID
}
/**部署流程定義(從Classpath)
* @param name //部署名稱
* @param xmlpath //xml檔案路徑
* @param pngpath //png檔案路徑
* @from fhadmin.cn
*/
protected String deploymentProcessDefinitionFromClasspath(String name, String xmlpath, String pngpath){
DeploymentBuilder deploymentBuilder = repositoryService.createDeployment(); //建立部署物件
deploymentBuilder.name(name); //部署名稱
deploymentBuilder.addClasspathResource(xmlpath); //從檔案中讀取xml資源
deploymentBuilder.addClasspathResource(pngpath); //從檔案中讀取png資源
Deployment deployment = deploymentBuilder.deploy(); //完成部署
return deployment.getId(); //部署ID
}
/**部署流程定義(從zip壓縮包)
* @param name //部署名稱
* @param zippath //zip檔案路徑
* @from fhadmin.cn
* @throws FileNotFoundException
*/
protected String deploymentProcessDefinitionFromZip(String name, String zippath) throws Exception{
File outfile = new File(zippath);
FileInputStream inputStream = new FileInputStream(outfile);
ZipInputStream ipInputStream = new ZipInputStream(inputStream);
DeploymentBuilder deploymentBuilder = repositoryService.createDeployment(); //建立部署物件
deploymentBuilder.name(name); //部署名稱
deploymentBuilder.addZipInputStream(ipInputStream);
Deployment deployment = deploymentBuilder.deploy(); //完成部署
ipInputStream.close();
inputStream.close();
return deployment.getId(); //部署ID
}
-----------------------------------------------------------------自定義表單
28. 定義模版:拖拽左側表單元素到右側區域,編輯表單元素,儲存表單模版
29. 表單模版:編輯維護表單模版,複製表單模版,修改模版型別,預覽表單模版
30. 我的表單:選擇表單模版,編輯表單規則,是否上傳圖片、附件、開啟富文字、掛靠流程開關等
31. 表單資料:從我的表單進去可增刪改查表單資料,修改表單規則
32. 掛靠記錄:記錄表單資料和流程例項ID關聯記錄,可刪除