背景在数据驱动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": {} //固定给空, 关闭任务不须更新变数
}