高效、简单、方便管理与维护的开源运维工单系统
ferry 工单系统介绍
ferry工单系统是一个集工单统计、任务钩子、RBAC权限管理、灵活配置流程与模版于一身的开源工单系统,当然也可以称之为工作流引擎。
权限控制:给予casbin的rbac权限控制开发,能非常灵活的控制左侧菜单及页面按钮,并且可以对api进行权限控制,避免可以通过类似与Postman的工具直接发送请求触发api操作的情况。
工单统计:对工单进行数据统计,便于以后对根据工单进行分析与调整。
任务钩子:目前支持在当前阶段离开时来触发任务钩子,进行任务的执行,当然后面会加入进入当前阶段的时候触发任务钩子,来执行任务,并且将表单数据,当成参数传递给任务,方便任务可以根据表单数据进行一系列的操作。
灵活配置流程及模版:通过后台管理,实现拖拖拽拽就能创建出一个完成的工作流和模版,并可以绑定模版。进行表单输入。
当然还有更多更好更妙的功能,比如:并行阶段处理,条件判断处理,会签功能,处理人实现变量管理等等。
还有已经排入日程的功能开发,比如:表单设计的子表单功能,加签功能,催办功能,多人可自认工单处理功能等等。
当然如果你觉得还有需要加的功能可以给作者留言,或者提交PR。
github: https://github.com/lanyulei/ferry
gitee: https://gitee.com/yllan/ferry
如果可以的话,github或者gitee上点上一个小小的star吧,一份支持,一份动力。
此项目为方便以后加入其他项目,因此代码结构是根据功能区分好的,比较适合做二次开发加入新的项目,例如作者后续就打算加入,CMDB,SQL审计平台等等。
权限控制
粒度非常大的权限控制,页面按钮都可准确控制,并且可对API进行访问控制。
首先先添加菜单及按钮数据。
image然后就可通过角色进行权限控制了。
image后端使用的casbin及自己维护的扩展表进行权限管理,前端按钮的展示则通过v-permisaction
来进行维护管理。
任务钩子
通过对每个阶段进行任务绑定来实现,流程中的任务执行。
同时可通过Web页面对任务进行管理和维护。
image在流程中绑定任务。
image灵活定制流程及模版
对流程和模版进行灵活的配置。
首先是流程。
image然后设计模版。
image工单统计(正在开发阶段)
目前统计的数据:
- 工单总数
- 待办工单总数
- 个人待办总数
- 本周工单统计,曲线图展示,包括工单总数,待办总数,已完成总数
- 本周工单数据提交排名
- 本周待办工单排名
- 本周完成工单排名