关于工作流的管理系统

前言

本文是基于《工作流引擎设计与实现》系列文章的基础上做的工作流的管理系统,目前还在迭代开发中,后续会有开源计划,敬请期待!

群体划分

业务人员

业务人员即针对使用工作流去发起审批、处理审批的人群。

技术人员

技术人员即根据业务流程转化成工作流,主要是使用流程设计器设计流程。

业务人员视角

我们先从业务人员视角,看其是如何使用工作流的。

发起申请

发起申请即发起技术人员已经制作好的流程,一般会有一个统一的发起入口列表,发起人只需要点击对应的审批流程,即可打开发起流程对应的表单。如下,当我们点击发起申请时,会看到如下列表。其中假期管理和智能账务为流程的分类,请假流程和补卡流程为假期管理下的审批流程,报销流程为智能账务下的审批流程。

当我们点击对应的审批,会弹出对应的申请表单页,申请表单页主要由两部门构成,一部分是要填写的申请表单,另一部分为该申请流程对应的审批流程图。只要填写完申请表单,点击右下角的确定按钮,即可发起一个审批流程。

请假流程

补卡流程

我发起的

我发起的即用户在发起申请那边发起的流程,会在该列表中显示,如下发起申请,确认提交。

提交成功,就会跳转到我发起的列表

点击列表操作的"详情",即可查看流程详情,流程详情共有三部分构成:表单、流程图、审批记录

  • 表单,即发起时填的表单,该表单禁止编辑
  • 流程图,其中,红色为已完成节点或边,绿色为正在进行的节点。
  • 审批记录,显示的是当前流程所有已完成的任务,有时间轴和表格两种呈现方式。

我的待办

用户待处理的任务列表,如上发起的流程处于部门经理审批节点,则在该部门经理审批节点的绑定的参与人就会参生一条待办。这里我们先不展开,等后续讲到技术人员模块时再详细讲解。

我们先登录该参与人账号,进入我的待办即看到如下列表

点击列表操作"办理",即可看到审批流程处理页,其主要包括表单、流程图、审批记录、操作区域四个部分。而操作又分为:同意、拒绝、退回上一步、退回发起人、跳转等五个操作。

  • 同意,即完成该任务,并使流程往下一个流程节点前进
  • 拒绝,也是完成任务,但会直接将流程结束
  • 退回上一步,也是完成任务,但是流程会回退到该节点的上一个节点
  • 退回发起人,也是完成任务,但是流程会回退到发起人
  • 跳转,也是完成任务,但是会跳转到前面已完成节点的任意节点。

这里的操作就先不一一演示了,我们可以选择退回发起人

当退回发起人时,发起人在我的待办中会产生一条待办,因为其是发起人,所以申请表单恢复到可编辑状态。

此时的审批记录为

再次提交

此时审批记录为

我的已办

已处理过的任务列表,如下:

点击操作列表中的"详情",即可查看审批流程详情,其包括如下部分:表单、流程图、审批记录、操作区域,都是只读模式。

表单

流程图

审批记录

技术人员视角

流程设计

新增

  • 显示名称,和流程定义的显示名称对应
  • 唯一编码,和流程定义的唯一编码对应
  • 流程分类,用于在发起申请列表那里分组
  • 图标,用于在发起申请列表那里显示
  • 备注

编辑

对新增时填写的基本信息进行编辑

设计

打开流程设计器,进行流程设计,右上角有保存按钮,点击保存,会提交到后端入库。

常规操作

  • 右键编辑流程基本信息
  • 点击节点编辑节点属性

关于流程节点属性和任务节点属性这里就不再多介绍,具体可看前面关于《工作流引擎设计与实现》的系列文章。

部署

将流程设计更新到流程定义表,该操作会产生一个新的流程定义版本

重新部署

将流程设计更新到流程定义表,该操作会覆盖原最新版本的流程定义

流程定义

主要就一个列表展示

当然,在这里也可以发起流程

小结

关于工作流的管理系统涉及到的大的功能点主要是这些,当然,这里只是补步演示,还有很多细节需要考虑。后续的细节会再根据需要出相应的文章或者录制相应的视频。如想了解更多,可加入组织。

相关推荐
有梦想的骇客6 小时前
书籍“之“字形打印矩阵(8)0609
java·算法·矩阵
yours_Gabriel6 小时前
【java面试】微服务篇
java·微服务·中间件·面试·kafka·rabbitmq
渔舟唱晚@6 小时前
大模型数据流处理实战:Vue+NDJSON的Markdown安全渲染架构
vue.js·大模型·数据流
hashiqimiya8 小时前
android studio中修改java逻辑对应配置的xml文件
xml·java·android studio
liuzhenghua668 小时前
Python任务调度模型
java·运维·python
結城8 小时前
mybatisX的使用,简化springboot的开发,不用再写entity、mapper以及service了!
java·spring boot·后端
小前端大牛马8 小时前
java教程笔记(十一)-泛型
java·笔记·python
东阳马生架构8 小时前
商品中心—2.商品生命周期和状态的技术文档
java
星辰离彬9 小时前
Java 与 MySQL 性能优化:MySQL 慢 SQL 诊断与分析方法详解
java·spring boot·后端·sql·mysql·性能优化
鱼樱前端9 小时前
Vue3+d3-cloud+d3-scale+d3-scale-chromatic实现词云组件
前端·javascript·vue.js