背景在数据驱动1.0中, 有人工型任务(活动节点是手动)跟审核型任务(活动节点是签核) , 数据驱动2.0中则是人工关卡及人工签核
数据驱动1.0
数据驱动2.0
场景
第三方系统如果要对人工型任务的任务卡直接做提交的操作(不透过METIS), 该怎么做呢?
原理
如果是从METIS页面上操作, 只要页面设计中提交按钮有勾选数据处理完毕,是否结束任务, 使用者仅需要按下提交按钮, 即可完成任务的提交, 但在背后, 其实是有两个服务在支撑
数据提交(submit) : 将数据提交出去, 任务引擎会接到提交的数据, 改变data变数, 并且让项目继续往后走
关闭任务(dispatch) : 关闭任务, 将任务状态从进行中变已完成, 并且关闭任务卡
所以, 如果要直接从外部直接对指定任务卡提交, 可以直接呼叫那两个服务(必须数据提交成功后才能呼叫关闭任务)
数据提交
URL : /restful/standard/taskengine/api/task/manual/submit-data-batch
header : 放入token
body : 
{
  "data": [
    {
      "dispatchData": [
        提交的内容
      ],
      "dispatchDataMap": [
        {
          "data": [
            与dispatchData内容相同
          ],
          "workItemId": "1870346113588936704"  //工作项uid
        }
      ],
      "activityUid" : "1870346113169506304",  //活动uid
      "workitemId": "1870346113588936704",  //工作项uid
      "performerId": "jerry1218@digiwin.com",  //签核人员帐号 
      "agentPerformerId": "",  //代理人帐号, 如不是代理人给空字串
      "performerType": 0,  //0:正常处理 1:由代理人处理
      "processVariables": {
        "_ActLatelyPerformerId": "jerry1218@digiwin.com"  //最后签核人员帐号
      }
    }
  ]
}
关闭任务
URL : /restful/standard/taskengine/api/task/manual/dispatch
header : 放入token
body : 
{
  "needPushPtm": true,
  "workitemId": "1870346113588936704",  //工作项uid
  "performerId": "jerry1218@digiwin.com",  //签核人员帐号 
  "agentPerformerId": "",   //代理人帐号, 如不是代理人给空字串 
  "performerType": 0, //0:正常處理 1:由代理人處理
  "comment": "", //固定給空, 人工型任務不需簽核意見
  "processVariables": {}  //固定给空, 关闭任务不须更新变数
}