开源python工作流引擎(工单)系统

Loonflow(https://github.com/blackholll/loonflow)是基于django工作流引擎系统,通过http接口调用。 可作为企业内部统一的工作流引擎,提供权限申请、资源申请、发布申请、请假、报销等it服务等所有工作流场景。如果有一定的开发能力,建议只使用后端引擎功能,前端可以根据场景分散在各种内部后台管理系统(如人员、运维、监控、cmdb等等)。同时因为Loonflow是通过http api提供服务,所以你的调用方可以是各种语言,而不是必须python。

LOONFLOW 分为两部分:

工作流配置配置管理背景http api如果oa、cmdb、调用运维系统和客服系统,完成各自系统定制的工单需求

Loonflow只提供后端调用api配置后台和工作流,但分别提供vue和bootstrap调用方的版本demo。以下是效果图和动画

vue版本demo

vue版本demo创建工单界面

vue版本demo工单列表界面

vue工单界面的版本处理

Boostrap版本demo

loonflow提供更完善的管理直接配置修改工作流,并自动生成相应的流程图。

后台工作流配置界面管理

管理后台工作流配置-自定义字段配置

管理背景-工作流程图

Loonflow主要功能包括:

【API】新建工单

【API】获取工单列表:待办、关联、创建的工单

【API】获取工单细节(区分是否有处理权限,如果处理权限显示处理表,则有权限显示显示表)

【API】用户可以操作工单

【API】处理工单(提交、保存、同意、拒绝、完成等)

【API】获取工单流通记录(工单历史操作记录)

【API】工单step(简化处理记录顺序图)

【API】修改工单状态

【API】批量获取工单状态(逗号分离,简单状态信息:只包括状态id,状态名称)

【API】获取工单状态详情

【API】接单(当工单当前处理人实际为多人时,支持先接单,再处理)

【API】转交工单

【API】加签工单

【API】提供修改工单字段的值api

【API】在工单列表中的接口中state对象增加label信息

【API】提供接口获取工作流的状态(state)列表

【API】工单脚本允许重试(执行失败),重试工单脚本api

【API】支持工单列表接口state_ids,工单结束了吗?ids来查询

支持工单流通过程中的自动化执行python脚本(各种定制操作可以通过写脚本来实现)

必填字段的校准支持不同的transiton区分配置是否开启

【内部逻辑】自定义字段增加标签字段,用于调用方自行处理逻辑

工单流水号前缀自定义

内部逻辑工单的分配支持随机处理和全部处理(当工单状态的处理人为多人、部门和角色实际对应多个处理人时,如果该状态的分配方法是随机处理,则工单处理人将设置为其中一个。 若该状态设置的分配方式全部处理,则需要涉及的每个人在进入下一个状态之前都要处理)

【内部逻辑】支持条件流通(如申请工单请假,请假天数>3.请假天数需经董事批准>5需要CEO审批)

支持内部逻辑设置transion同意、拒绝或其他属性,并更新工单状态

【内部逻辑】待办通知功能(通过自定义发送消息脚本发送, 支持通知内容模板自定义)

【内部逻辑】新建工单的权限支持(限制周期、限制人员、限制等级等。)通过权限限制表达式实现。

【内部逻辑】退货操作支持自定义是否返回到目标状态的最后一个处理人(如权限申请类型的工单,其中一个状态是操作维护人员处理。操作维护A接单处理完成后,达到申请人验证。如果申请人发现验证不合格,需要退回,可以定义是退回所有操作维护人员还是只退回以前处理过的操作维护人员。A)

内部逻辑API调用授权范围管理:支持根据调用方确定列表范围(不同来源的应用程序只允许查询与应用程序相关的数据:工单列表、工单细节等)

【内部逻辑】定时器流通(如果需要工单在某个工单状态下自动流通多长时间,可以通过此实现)-使用celery的countdown实现

内部逻辑将当前工单的所有信息保存在工单的历史记录中,以便于回顾(工单每次操作) 保存当前工单所有字段的信息)

工作流配置管理背景

扫码免费用

源码支持二开

申请免费使用

在线咨询