基于事件的轻量级流程引擎组件,可以很简单的创建流程、流程步骤及控制流程流转,通过对流程事件的定义,很方便的处理具体业务逻辑。

v1.1.0 2021-07-21 09:48 UTC

This package is not auto-updated.

Last update: 2022-10-27 11:23:31 UTC


README

基于事件的轻量级流程引擎组件,可以很简单的创建流程、流程步骤及控制流程流转,通过对流程事件的定义,很方便的处理具体业务逻辑。它不依赖具体数据库存储类型。通过内置的mysql表定义可以开箱即用,也可以根据自身应用情况修改。同时良好的结构使其具有很好的扩展能力,有相关需求请提交于我。

安装方法

composer require mingyuanyun/iflow

目录结构

--src 源代码
  |--actions 流程动作点,如发起、审批(同意)、审批(拒绝)、归档
  |--bases 基类,如:事件基类、数据交换实体基类
  |--contexts 上下文类
  |--entities 实体类,用于流程数据交换
  |--exceptions 异常类
  |--interfaces 接口服务类、iflow内置了相关服务的实现、可根据需要扩展
  |--services 具体接口服务类、目前CacheService及LogService未用
  |--states 状态类集合,如:流程状态、步骤状态
  |--types 类型类集合,如:流程类型、步骤类型、角色类型
  |--utils 工具类集合
  |--flow.php 流程入口文件
  |--conf.php 配置文件
--script sql脚本
  |--mysql.sql 内置mysql创建流程表脚本   |--vx.x.x.sql 内置mysql对应升级版本脚本
--demo 示例代码
  |--流程操作.php 创建、发起和取消流程
  |--步骤操作.php 操作流程步骤及流转(审批)
  |--流程事件.php 事件处理
  |--流程模板.php 利用流程模板创建流程实例   |--自定义扩展.php 高级自定义扩展