当前位置: 首页 > news >正文

榆林市城乡建设规划局网站wordpress 小视频

榆林市城乡建设规划局网站,wordpress 小视频,保定网站制作系统,河南省住房和城乡建设厅门户网站接上一篇#xff1a; 第9篇#xff1a;Flowable-Modeler集成以及集成代码下载 https://blog.csdn.net/weixin_40816738/article/details/102901208 文章目录一、背景二、方案设计2.1. 流程部署2.2. 模型的转换2.3. 启动流程三、BPMN业务流程文件3.1. 启动flowable-idm3.2. 启… 接上一篇 第9篇Flowable-Modeler集成以及集成代码下载 https://blog.csdn.net/weixin_40816738/article/details/102901208 文章目录一、背景二、方案设计2.1. 流程部署2.2. 模型的转换2.3. 启动流程三、BPMN业务流程文件3.1. 启动flowable-idm3.2. 启动flowable-modeler3.3. BPMNxml的内容四、服务4.1. 服务接口设计4.2. 部署服务实现4.3. 启动服务实现4.4. 部署控制器4.5. 启动控制器4.6. 部署创建流程验证4.7. 运行流程验证一、背景 本文开始将陆续开始Flowable的API编程操作慢慢掌握Flowable的常见API操作参考博客 https://blog.csdn.net/weixin_40816738/article/details/102887854 二、方案设计 2.1. 流程部署 Flowable的流程部署通过仓库服务来完成部署仓库服务的接口为RepositoryService。该接口通过创建DeploymentBuilder来完成部署 2.2. 模型的转换 部署前我们编辑了一个普通的流程文件需要加载下改文件来防止文件有错误把文件转换为BPMNModel来校验核心接口为BpmnXMLConverter通过API接口convertToBpmnModel来实现xml到模型的转换 2.3. 启动流程 加载完成流程后我们将流程启动Flowable的启动接口为runtimeService运行时服务调用startProcessInstanceByKey启动一个流程并且返回流程对象ProcessInstance。该对象包含ID后续我们将经常用到该ID。 三、BPMN业务流程文件 还是使用简单流程来完成业务流程的学习目前流程只包含一个开始节点/用户任务节点/结束节点。给用户任务节点配置一个分配人为admin.如下图所示 3.1. 启动flowable-idm java -jar .\flowable-idm.war启动如下图所示默认端口8080 http://localhost:8080/flowable-idm/3.2. 启动flowable-modeler http://localhost:8080/flowable-modeler/注删除权限验证证后直接访问http://localhost:8080/flowable-modeler/即可 3.3. BPMNxml的内容 如下: ?xml version1.0 encodingUTF-8? definitions xmlnshttp://www.omg.org/spec/BPMN/20100524/MODEL xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xmlns:xsdhttp://www.w3.org/2001/XMLSchema xmlns:flowablehttp://flowable.org/bpmn xmlns:bpmndihttp://www.omg.org/spec/BPMN/20100524/DI xmlns:omgdchttp://www.omg.org/spec/DD/20100524/DC xmlns:omgdihttp://www.omg.org/spec/DD/20100524/DI typeLanguagehttp://www.w3.org/2001/XMLSchema expressionLanguagehttp://www.w3.org/1999/XPath targetNamespacehttp://www.flowable.org/processdefprocess idtest_bpmn name测试BPMN模型 isExecutabletruedocumentation测试BPMN模型/documentationstartEvent idstart name开始/startEventendEvent idend name结束/endEventuserTask idtestUser name用户任务测试 flowable:assigneeadminextensionElementsmodeler:initiator-can-complete xmlns:modelerhttp://flowable.org/modeler![CDATA[false]]/modeler:initiator-can-complete/extensionElements/userTasksequenceFlow idsid-8D834F3C-45A8-4C88-9AD1-1AC426CC9002 sourceRefstart targetReftestUser/sequenceFlowsequenceFlow idsid-AB59612A-1B33-4FB8-8758-5D773EDF9C44 sourceReftestUser targetRefend/sequenceFlow/processbpmndi:BPMNDiagram idBPMNDiagram_test_bpmnbpmndi:BPMNPlane bpmnElementtest_bpmn idBPMNPlane_test_bpmnbpmndi:BPMNShape bpmnElementstart idBPMNShape_startomgdc:Bounds height30.0 width30.0 x210.0 y60.0/omgdc:Bounds/bpmndi:BPMNShapebpmndi:BPMNShape bpmnElementend idBPMNShape_endomgdc:Bounds height28.0 width28.0 x525.0 y61.0/omgdc:Bounds/bpmndi:BPMNShapebpmndi:BPMNShape bpmnElementtestUser idBPMNShape_testUseromgdc:Bounds height80.0 width100.0 x315.0 y35.0/omgdc:Bounds/bpmndi:BPMNShapebpmndi:BPMNEdge bpmnElementsid-8D834F3C-45A8-4C88-9AD1-1AC426CC9002 idBPMNEdge_sid-8D834F3C-45A8-4C88-9AD1-1AC426CC9002omgdi:waypoint x239.94999779398907 y75.0/omgdi:waypointomgdi:waypoint x315.0 y75.0/omgdi:waypoint/bpmndi:BPMNEdgebpmndi:BPMNEdge bpmnElementsid-AB59612A-1B33-4FB8-8758-5D773EDF9C44 idBPMNEdge_sid-AB59612A-1B33-4FB8-8758-5D773EDF9C44omgdi:waypoint x414.9499999999903 y75.0/omgdi:waypointomgdi:waypoint x525.0 y75.0/omgdi:waypoint/bpmndi:BPMNEdge/bpmndi:BPMNPlane/bpmndi:BPMNDiagram /definitions四、服务 4.1. 服务接口设计 有了xml之后我们设计web的服务层接口如下 package com.gblfy.service;import org.flowable.engine.runtime.ProcessInstance;import java.util.Map;/*** 流程服务类*/ public interface IFlowService {/*** 部署工作流*/MapString,Object createFlow(String filePath);/*** 启动工作流*/ProcessInstance strartFlow(String processKey, MapString,Object paras); }4.2. 部署服务实现 部署的代码实现如下,代码中我们加入了流程的校验 Override public ProcessInstance strartFlow(String processKey, MapString, Object paras) {if (StringUtils.isEmpty(processKey)){return null;}if (null paras){paras new HashMap();}Deployment deployment repositoryService.createDeploymentQuery().processDefinitionKey(processKey).singleResult();if (deployment null){log.error(没有该流程);return null;}return runtimeService.startProcessInstanceByKey(processKey,paras);} 4.3. 启动服务实现 启动服务实现如下为了防止没有部署就去启动加入了流程是否存在的检查: Override public ProcessInstance strartFlow(String processKey, MapString, Object paras) {if (StringUtils.isEmpty(processKey)){return null;}if (null paras){paras new HashMap();}Deployment deployment repositoryService.createDeploymentQuery().processDefinitionKey(processKey).singleResult();if (deployment null){log.error(没有该流程);return null;}return runtimeService.startProcessInstanceByKey(processKey,paras);} 4.4. 部署控制器 web入口设计简单主要启动服务并且返回服务的部署信息具体实现如下: RequestMapping(/create)ResponseBodypublic MapString, Object createFlow() {MapString, Object res new HashMap();MapString, Object data new HashMap();String flowPath C:\\Users\\gblfy\\Desktop\\Workflow\\flowablestudy\\flowablelech10\\src\\main\\resources\\processes\\测试BPMN模型2.bpmn20.xml;MapString, Object createRes flowService.createFlow(flowPath);if (null createRes) {res.put(msg, 创建流程失败);res.put(res, 0);res.put(data, data);return res;}ListProcess processes (ListProcess) createRes.get(processes);ArrayListString ids new ArrayList();for (Process process : processes) {ids.add(process.getId());}data.put(processKeys, ids);data.put(deployId, ((Deployment) createRes.get(deployment)).getId());res.put(data, data);res.put(msg, 创建流程成功);res.put(res, 1);return res;}4.5. 启动控制器 启动控制器实现如下: RequestMapping(/start)ResponseBodypublic MapString, Object startFlow(RequestBody RequestParam(required false) MapString, String paras) {MapString, Object res new HashMap();MapString, String data new HashMap();if (MapUtils.isEmpty(paras)) {res.put(msg, 启动流程失败);res.put(res, 0);res.put(data, data);return res;}String processKey paras.get(processKey);if (StringUtils.isEmpty(processKey)) {res.put(msg, 启动流程失败);res.put(res, 0);res.put(data, data);return res;}MapString, Object flowParas new HashMap();flowParas.putAll(paras);ProcessInstance processInstance flowService.strartFlow(processKey, flowParas);if (null processInstance) {res.put(msg, 启动流程失败);res.put(res, 0);res.put(data, data);return res;}data.put(processId, processInstance.getId());res.put(msg, 启动流程成功);res.put(res, 1);res.put(data, data);return res;}4.6. 部署创建流程验证 启动服务后在浏览器中输入http://localhost:8989/flow/create验证如下 4.7. 运行流程验证 输入http://localhost:8989/flow/start?processKeytest_bpmn验证如下 Flowable部署启动流程完整代码下载 Gitlab链接https://gitlab.com/gb-heima/flowablestudy/tree/master/flowablelech10 码云地址https://gitee.com/gb_90/flowable-study/tree/master/flowablelech10 下一篇 第11篇Flowable-BPMN部署常见问题没有对ACT_RE_PROCDEF表进行插入操作 https://blog.csdn.net/weixin_40816738/article/details/102902524
http://www.zqtcl.cn/news/576405/

相关文章:

  • 泉州网站制作推广网站建设一年多少
  • 超大型网站建设公司网站打开显示建设中
  • 惠东县网站建设建设方案
  • 怎么把做的网站发布长春建网站
  • 织梦网站手机端郑州网站制作公司名单
  • 如何建设网站安全网站桥页也叫
  • 南浔网站建设昆山智能网站开发
  • 阿里云可以做电商网站吗杭州网站建设浙江
  • 查询网站备案进度网站建设推广
  • 怎么做公司网站需要什么科目高端网站建设教学
  • 资讯平台网站模板中企中立做的网站好吗
  • 网站开发人员配备山西省吕梁市简介
  • 网站注销主体注销中国建设教育协会培训报名网站
  • 电商网站设计思想建设化妆品网站的成本
  • 做房产网站能赚钱吗深圳龙华区邮政编码
  • 网站开发素材代码手机网站 win8风格
  • 免费推广网站软件班级网站怎么做ppt模板
  • 在线做任务的网站有哪些wordpress ui 插件
  • 竣工验收备案表查询网站优化大师win10能用吗
  • php 网站管理系统做生鲜管理系统的网站
  • 昆山建设工程招聘信息网站业绩显示屏 东莞网站建设技术支持
  • 百度我的网站广东广州网站建设
  • 怎么提高网站流量沈阳有资质做网站的公司有哪些
  • 内蒙古住房与城乡建设厅网站网址微信可以上网
  • 如何网站seo中国化工第九建设公司网站
  • 无锡网站推广优化公司单位网站建设必要性
  • 网站建设丶金手指花总12网站建设是怎么挣钱
  • 网站开发都是用什么框架广西建设网人员查询网
  • 做购物网站怎么写开题报告中山如何建网站
  • 专门做游戏交易的网站新网站如何才做被百度收录