关于项目流程配置项的介绍

关于流程配置项的介绍

下面内容主要是对Workflow-Api-Pro项目中流程配置的介绍。相关项目源码可以去githubWorkflow-Api-Pro查看。

简介

我们可以自己配置json,生成流程环节,然后存入数据表workflow_definition中的content的字段。
json中主要包含一下字段:

  • description:对该流程的综合描述
  • update_author:定义流程的人员
  • updated_date: 流程的生成(更新)时间
  • steps: 流程的步骤
  • comments: 流程审批意见分类

下面主要对step和comments讲解(也是流程配置的主要内容)

step解析

step是一个数组,一条流程有多个环节,每个环节以json对象的形式放入到step数组中。

1、每个json对象的内容讲解
  • id:该环节的唯一标识
  • name: 该环节的名称
  • is_preemptive:该环节是否支持抢办 true 为支持 false为不支持(会签默认是会签)
  • “comments”:该环节属于那一类评审意见
"comments": {
        "ref": 7, \\ 评审意见分类ID
        "notice": ""
}
  • actions:流程的下一步动作,是一个数组,每一个对象表示下一步的信息
"actions": [
        {
          "id": 1001, // 流程动作ID 唯一性
          "name": "送项目外协负责人确认", // 流程动作的名称
          "category": "next", //环节按钮的显示(供前段使用,如‘next’表示提交下一步,‘terminate’表示注销。。。)
          "results": [
            {
              "step": 2,
              "owners": {
                "name": "getProjectManager"  // 可分发人员
              },
              "status": "Finished"
            }
          ],
          // 针对于动作的回调函数 post_functions为动作之后的回调函数, pre_functions为动作之前的回调函数
          "post_functions": [
            {
              "name": "activateWorkflow"
            },
            {
              "name": "startHandle"
            }
          ]
        }
]
  • results:是在action中的对象的一个属性,是一个数组表示当前环节可以选择的下一个环节有哪些,每个环节选项依然对应一个json对象
{
   "step": 2, // 对应环节唯一标识
   "owners": {
     // 通过回调函数获取该环节的可选人员(待办人员)
     "name": "getProjectManager" // 回调函数 在workflow文件夹的callback.php中写入,
    },
    "status": "Finished" 
 }
  • restrict:也是在action中的对象的一个属性,表示该动作显示的条件。type为‘and’表示list中的回调条件必须满足;为‘or’满足一个就显示
"restrict": {
    "conditions": {
          "type": "and",
          "list": [
              "checkIsCmriProject"
          ]
    }
}
  • pre_functions:是一个数组表示在进入该环节前需要的操作,里面是一个回调函数名称。action中的为动作执行前的操作
"pre_functions": [
        {
          "name": "refuseHandle"
        }
 ]
  • post_functions:是一个数组表示在执行离开该环节后需要的操作,里面是一个回调函数名称。action中的为动作执行后的操作
"post_functions": [
            {
              "name": "activateWorkflow"
            },
            {
              "name": "startHandle"
            }
]

comments 解析

  • id:唯一表示
  • name:评审意见title
"comments": [
    {
      "id": 1,
      "name": "订单负责人起草意见"
    },
    {
      "id": 2,
      "name": "项目外协负责人确认意见"
    }
  ]

注:配置里面的回调函数均是在Workflow文件夹中的app/Workflow/Callback.php中定义

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值