目录

  • 简介
  • 常用表信息
  • 表定义(关系)
  • 演示
  • 以下列流程为例
    • 流程定义
    • 启动流程
    • 执行任务
    • 流程转派
    • 根据当前任务查询代办任务列表
    • 结束流程
  • 补充

简介

snaker是一个基于Java的轻量级工作流引擎,适用于企业应用中常见的业务流程。本着轻量、简单、灵巧理念设计,定位于简单集成,多环境支持

常用表信息

表名称 表描述
wf_process 流程定义表
wf_order 活动实例表
wf_task 活动任务表
wf_task_actor 活动任务参与者表
wf_hist_order 历史实例表
wf_hist_task 历史任务表
wf_hist_task_actor 历史任务参与者表
wf_surrogate 委托代理管理表
wf_cc_order 抄送实例表

表定义(关系)

演示

此处演示从流程定义到流程结束的全过程,去了解数据库核心表存储数据的过程。

以下列流程为例

流程定义—>启动流程—>执行任务—>流程转派—>根据当前任务查询代办任务列表—>结束流程

流程定义

根据自己的实际业务情况设计一个流程

设计好的流程会在wf_process(流程定义表)中生成一条记录

启动流程

通过postman调用启动流程方法,启动流程,返回信息如下:

解释:
processId:主键id
operator:当前操作人
args: fq:流程发起人,pm:一级流程审批人,qa:二级流程审批人

注意:operator(当前操作人)就相当于fq(流程发起人),所以,这两个人必须一致,否则无法成功发起流程

流程成功启动之后,会在wf_order(活动实例表)新增一条实例。只要流程还在执行或者是流程没有销毁等,该实例一直存在。

wf_task(活动任务表)也新增一条流程任务信息

可以在wf_task_actor(活动任务参与者表)中查看该流程的下一级审批人是谁

执行任务

上一步查询出下一级审批人为“李四”,所以让“李四”来审批
解释:
taskId:任务id
operator:当前操作人
args:method:0(执行任务),result

同理,可以在wf_task_actor(活动任务参与者表)中查询下一节点审批人是谁

流程转派

有一种业务情况,比如财务请假或者离职,需要把财务需要审批的任务转派给新的人去审批。所以将财务(王五)的任务转派给“赵六”

转派之后,该节点执行人成功变更

根据当前任务查询代办任务列表

并且可以查看到“赵六”名下有一个待办任务

结束流程

补充

若要查询某一个用户名下的所有代办任务,可以通过wf_task和wf_task_actor联查,例如

snaker工作流核心表学习相关推荐

  1. 窗口消息——Windows核心编程学习手札之二十六

    窗口消息 --Windows核心编程学习手札之二十六 Windows允许一个进程至多建立10000个不同类型的用户对象(user object):图符.光标.窗口类.菜单.加速键表等,当一个线程调用一 ...

  2. 未处理异常和C++异常——Windows核心编程学习手札之二十五

    未处理异常和C++异常 --Windows核心编程学习手札之二十五 当一个异常过滤器返回EXCEPTION_CONTINUE_SEARCH标识符时是告诉系统继续上溯调用树,寻找另外的异常过滤器,但当每 ...

  3. 结束处理程序——Windows核心编程学习手札之二十三

    结束处理程序 --Windows核心编程学习手札之二十三 使用SEH可以只关注程序要完成任务,而运行中发生的错误,系统将会发现并通知.Windows引入SHE是为了便于操作系统的开发,使用SHE所造成 ...

  4. 插入DLL和挂接API——Windows核心编程学习手札之二十二

    插入DLL和挂接API --Windows核心编程学习手札之二十二 如下情况,可能要打破进程的界限,访问另一个进程的地址空间: 1)为另一个进程创建的窗口建立子类时: 2)需要调试帮助时,如需要确定另 ...

  5. DLL基础——Windows核心编程学习手札之十九

    DLL基础 --Windows核心编程学习手札之十九 Windows API中的所有函数都包含在DLL中,3个最重要的DLL是Kernel32.dll,它包含用于管理内存.进程和线程的各个函数:Use ...

  6. 内存映射文件——Windows核心编程学习手札之十七

    内存映射文件 --Windows核心编程学习手札之十七 与虚拟内存一样,内存映射文件保留地址空间,并将物理存储器提交给该区域,差别在于所提交的物理存储器是磁盘上有文件存在的空间,而非系统的页文件,一旦 ...

  7. 线程基础知识——Windows核心编程学习手札系列之六

    线程基础知识 --Windows核心编程学习手札系列之六 线程与进程一样由两部分构成:一是线程的内核对象,操作系统用它来对线程实施管理,也是系统用来存放线程统计信息的地方:二是线程堆栈,用于维护线程在 ...

  8. 作业——Windows核心编程学习手札系列之五

    作业 --Windows核心编程学习手札系列之五 Windows提供作业内核对象,可以将进程组合在千毫 ,并创建一个"沙框"以便限制进程能够进行的操作.作业可视为进程的容器,win ...

  9. 内核对象——Windows核心编程学习手札系列之三

    内核对象 --Windows核心编程学习手札系列之三 内核对象可供系统和应用程序使用来管理各种各样的资源,如进程.线程.文件等,是内核分配的一个内存块,只能又内核访问,该内存块是一种数据结构,它的成员 ...

  10. 工作流Activiti5.13学习笔记(一)

    工作流Activiti5.13学习笔记(一) 了解工作流 1.工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个 ...

最新文章

  1. 第十九课.基于sklearn的SVM人脸识别
  2. oracle 9i net基本配置
  3. centos 对已有卷扩容_centos7 逻辑卷扩容
  4. 锐捷网费和锐捷网络缴费_教育信息化领域多位专家出席锐捷“三个课堂”应用展示研讨会...
  5. extjs tree下拉列表_使用ztree来代替Extjs的下拉树
  6. Unity中的layer和tag
  7. 英伟达用GAN生成脑瘤图像,训练出的AI医生,准确率提高16%
  8. JSON 字符串 与 java 对象的转换
  9. android编译时注解,Android编译时注解框架系列2-Run Demo
  10. 没有基础的人可以学python吗-无基础可以学习Python吗?
  11. 大数据技术的理解误区
  12. wordpress代码高亮插件coolcode
  13. SQL:PostgreSQL+PostGIS的安装以及C# GDAL开发环境配置
  14. Python之pygame安装教程
  15. juniper使用U盘安装junos10k2系统
  16. 文件MD5查看linuxwindows
  17. WEB安全-ESAPI
  18. 2021年人工智能学习路线图分享
  19. 双耳节拍 枕头_枕头2.2.1发布
  20. SpringCloudSpringBoot集成Acivity6.0

热门文章

  1. python卡方拟合性检验_卡方检验
  2. Tourists——圆方树
  3. 瑞星杀毒软件影响Applet无法启动的解决方法
  4. diy 扫地机器人 滚刷_滚刷结构及扫地机的制作原理
  5. 快播将关闭QVOD服务器 宅男,你心碎了吗?
  6. 微信付款为什么无法连接服务器,前台微信付款报错:无法连接服务器,请检查网络连接?...
  7. METS(护理类)一级考试的信效度分析及其对教学的作用
  8. postgresql中recovery.conf分析
  9. 多重影分身之术!快来领取属于自己的个人智能助手!
  10. 期末复习【操作系统】