Skip to content

提交 ​

接口请求调用说明

  • HTTP 请求方式:POST
  • 请求地址:http://127.0.0.1:8080/demo/horizon/workflow/rest/flow/support/action.wf

请求参数:

json
{
  "accessToken": "",
  "flowId": "flowsupport",
  "workId": "HZ2886865bf17466015bf1871de1004b",
  "trackId": "HZ2886865bf17466015bf1872089004c",
  "subjection": "D_HZ28821856ef63420156ef63429c0000",
  "authorKey": "Author",
  "comment": "",
  "nodeId": "Node1",
  "title": "",
  "actionData": {
    "operate": "submit",
    "operateFlag": 0,
    "operateClazz": "com.horizon.wf.action.ActionSubmit",
    "flowVars": {
      "field1": "123"
    },
    "nextNodes": [
      {
        "nodeKey": "Line2",
        "selectId": "Line2~Node2",
        "selectName": "新路由2(任务2)",
        "isSelect": "true",
        "isDone": "false",
        "nodeGroup": "",
        "isShowTabs": null,
        "timeLimit": "0",
        "timeLimitType": "0",
        "nodeStatus": "4",
        "authors": {
          "SecondAuthor": {
            "authorId": "SecondAuthor",
            "authorName": "协办",
            "selectType": "checkbox",
            "isFree": "true",
            "isUser": "false",
            "isDefUser": "false",
            "isSelect": "true",
            "selectAuthor": null,
            "selectAuthorName": null,
            "required": null,
            "initAuthor": null
          },
          "Reader": {
            "authorId": "Reader",
            "authorName": "读者",
            "selectType": "checkbox",
            "isFree": "true",
            "isUser": "false",
            "isDefUser": "false",
            "isSelect": "true",
            "selectAuthor": null,
            "selectAuthorName": null,
            "required": null,
            "initAuthor": null
          },
          "Author": {
            "authorId": "Author",
            "authorName": "主办",
            "selectType": "radio",
            "isFree": "true",
            "isUser": "false",
            "isDefUser": "false",
            "isSelect": "false",
            "selectAuthor": "U_admin/D_HZ28821856ef63420156ef63429c0000",
            "selectAuthorName": "管理员(慧正通软)",
            "required": null,
            "initAuthor": null
          }
        },
        "nodeId": "Node2",
        "nodeName": "任务2",
        "trackId": null
      }
    ]
  }
}
参数是否必须描述
accessToken是调用接口凭证,唯一用户标识
flowId否流程id
workId是流程实例id
trackId是流程路径 id,open接口返回flowNode.trackId什么传递什么
subjection否提交人所属的组织机构id(如部门id、群组id、岗位id等),格式为D_xxxid、G_xxxxid、P_xxxxid,open接口subjectionId返回什么传递什么
authorKey否提交人身份标识
comment否意见
nodeId否节点id
title否标题
actionData是流程操作json数据对象

actionData 数据参数:

参数是否必须描述
operate是操作提交标识,固定值submit
operateFlag是操作标记 -1:显示关闭,0、1正常提交
operateClazz是操作提交操作类路径,固定值com.horizon.wf.action.ActionSubmit
flowVars否流程变量赋值使用,flowVars为map,支持传多个,key变量名,value为变量值
nextNodes否需要选择的节点列表(如果已经设置好路由及办理人信息,可以不填)

nextNodes 参数说明:

参数是否必须描述
nodeKey是节点主键
selectId是需要选择的节点id
selectName否需要选择的节点名称
isSelect是是否已选择
isDone否是否已经走过
nodeGroup否节点分组,单节点时无值
isShowTabs否是否显示办理人页签
timeLimit否节点办理时限
timeLimitType否办理时限类型:0(自然日)、1(工作日)
nodeStatus否节点状态
authors是下一节点办理人对象
nodeId是节点id
nodeName否节点名称

authors 中 Author/SecondAuthor/Reader 对象参数说明:

参数是否必须描述
authorId否办理人类型id:Author(主办)、SecondAuthor(协办)、Reader(读者)
authorName否办理人名称
selectType否人员选择类型:radio(单选)、checkbox(多选)
isFree否是否自由选择
isUser否是否只允许选择人员
isDefUser否流程定义列表中选择
isSelect否是否允许选择办理人
selectAuthor是节点已选择办理人
selectAuthorName是节点已选择办理人名称
required否办理人必填标识
initAuthor否节点初始化办理人id

返回结果示例:

json
{
  "operate": "submit",
  "operateClazz": "com.horizon.wf.action.ActionSubmit",
  "operateText": "提交",
  "operateFlag": "0",
  "operateMsg": "提交成功",
  "reOpen": "false",
  "workId": "HZ2886865c0ec540015c0fb3103700da",
  "trackId": "HZ2886865c0ec540015c0fb3103800db",
  "nodeId": "Node1",
  "nodeName": "任务1",
  "subjection": "",
  "authorKey": "Author",
  "operateStatus": "success",
  "alert": "",
  "messageType": "",
  "nextNodes": [],
  "subFlows": ""
}

结果参数说明:

参数类型描述
operateString提交操作标识
operateClazzString提交操作类路径
operateTextString操作显示名称
operateFlagString操作标记 -1:显示关闭,0、1正常提交
operateMsgString返回操作信息
reOpenString是否重新打开,可忽略
workIdString流程实例id
trackIdString流程实例路径id
nodeIdString当前节点id
nodeNameString当前节点name
subjectionString提交人身份标识
authorKeyString参与者id
operateStatusString流程操作结果
alertString是否弹出操作成功信息,可忽略
messageTypeString消息发送类型
nextNodesList需要选择的节点列表
subFlowsList子流程列表

返回多节点-怎么判断节点默认选中/单选/多选
nextNodes参数说明:当返回多节点时,多个节点可能存在默认选中的/单选的/多选的,如何判断每个节点展示时,是默认选中/多选/单选
1)前端通过列表方式展示所有返回节点
2)通过每个节点信息中的 isSelect 的值,判断是否默认选中
  2.1)当 isSelect=true 时,表示默认已选中,且不能取消
  2.1)当 isSelect=false 时,表示可以自由选择
3)当 isSelect=false 时(自由选择),根据 nodeGroup 的值确认节点是单选/多选
  3.1)当 nodeGroup 有值,表示单选节点;nodeGroup相同的为同一个组,可以根据业务判断同一个组下是不是必须选择一个节点;
  3.2)当 nodeGroup 无值,表示多选节点

返回选择办理人时,如何判断各个节点是否需要选择办理人,以及选择办理人的方式
1)判断节点是否包含主办,authors.Author 是否存在
  1.1)当按钮是发送阅知,或者提交到结束时,authors 只包含 Reader
  1.2)当按钮是增加协办,authors 只包含 SecondAuthor
2)当 authors.Author.isSelect=false 时,前端显示 authors.Author.selectAuthorName 值
3)当 authors.Author.isSelect=true 时,标识需要选择办理人,办理人的设置方式见下
  3.1)从设置列表中选择,当 authors.Author.initAuthor 有值,且 authors.Author.isDefUser=true 时,标识需要从 initAuthor 中选择
    3.1.1)authors.Author.selectAuthor有值,标识可以默认选中,但是也允许从 initAuthor 里选择
  3.2)自由选择,当 authors.Author.isFree=true 时,标识,可以自由选择办理人,可以打开业务系统的组织机构选择框,选择办理人
  3.3)从设置列表中选择和自由选择可以同时存在,业务系统可根据业务需求判断是否同时支持