zoukankan      html  css  js  c++  java
  • flowable流程中心设计(一)

    背景

    业务场景涉及到流程审核的地方,大多在业务数据上耦合 yes和no的字段区分完成审核,但是在复杂流程下并不适应(会签、加签、并行、分支),开发人员可自行以对接开源流程引擎,但是面临以下问题
    1.学习成本、开发成本
    2.控制流程的代码耦合在业务代码里难以维护。
    3.各个业务线项目大量重复繁琐的流程控制代码
     
    复杂流程如下图:
     
    简单串行
     
    分支

     

    目标

    通过对接流程中心,开发人员不需要关注流程中心内部流程节点走向如何控制,不需要知道BPMN规范。
    只需要针对各个流程节点的相关状态做自己的业务逻辑处理,达到业务和流程控制隔离。
    对接流程中心只需要完成以下步骤
    1.通过流程中心提供的modeler设计器绘制流程图
    2.配置各节点的审核人、http监听回调、审核页、审核按钮(审核通过、驳回、流程终止、转办、加签等)
    3.通过流程中心提供的openAPI发起流程
    4.在监听器回调处理自己的业务逻辑,如:审核通过修改 业务单号状态
     

    一个简单流程的生命周期

     
    注:并不是所有用户都是使用后台管理有的用户可能使用的是小程序,以下流程列表相关接口也是提供OpenAPI对外暴露,对接方根据自己业务需求自行设计入口
    UI交互 以传统后台为例 会多出这几个菜单项
     
    我们以商品价格审核流程为例
     
    1.通过流程中心提供的modeler设计器绘制流程图,并配置各个节点的审核人、监听回调、审核页、审核按钮
     
  • 相关阅读:
    JSON数据的中文乱码问题
    使用json-lib进行Java和JSON之间的转换
    struts2 struts.xml配置文件详解
    php位运算的应用(转)
    oracle数据库导入导出的dmp(转)
    Java多线程-工具篇-BlockingQueue(转)
    javaweb之Filter详解(转)
    MYSQL写入数据时报错ERROR 1366 (HY000): Incorrect string value: 'xE8x8BxB1xE5xAFxB8...' for c 插入中文不能插入
    插入中文错误ERROR 1406 (22001): Data too long for column 'name' at row 1
    SQL语句处理一些修改、新增、删除、修改属性操作(MySql)
  • 原文地址:https://www.cnblogs.com/LQBlog/p/15796625.html
Copyright © 2011-2022 走看看