Fx.stage

Fx.stage:阶段推进器API 阶段的api

1. 触发阶段推进器

Fx.stage.trigger(<String objectApiName>, <String objectId>, <String userId>)

参数说明

参数 类型 说明
objectApiName String 对象的api名称
objectId String 对象数据id
userId String 发起人

返回值类型

APIResult

返回值说明

Map </br> workflowInstanceId:当前触发的阶段推进器的流程id </br> isCurrentDef:当前实例是否为当前定义 </br> hasInstance:是否存在流程实例 </br> stagePropellerName: 阶段推进器定义名称 </br> 返回值参考 </br> [false,{"workflowInstanceId":"631020344ffa3d4d730ebf3b"},""] </br> 注:以上是函数统一的返回结构,第一个返回值表示请求是否失败,false表示请求成功

Java举例

APIResult ret = Fx.stage.trigger("object_qep6N__c", "617f9b7340beec0001b9b14e","1007");
log.info(ret);
if (ret.isError()) {
 log.info(ret.message());
} else{
 log.info(ret.getData());
}

Groovy举例

def(Boolean error, Map data, String errorMessage) = Fx.stage.trigger("object_qep6N__c", "617f9b7340beec0001b9b14e","1007")
log.info(ret)
if (error) {
 log.info(errorMessage)
} else{
 log.info(data)
}

2. 匹配可以触发的阶段推进器(非商机2.0)

Fx.stage.matchDef(<String entityId>, <String objectId>, <String userId>)

参数说明

参数 类型 说明
entityId String 对象apiName
objectId String 数据id
userId String 用户id

返回值类型

APIResult

返回值说明

Map </br> sourceWorkflowId:定义id </br> isCurrentDef:当前实例是否为当前定义 </br> hasInstance:是否存在流程实例 </br> stagePropellerName:阶段推进器定义名称 </br> 返回值参考 </br> [false, {sourceWorkflowId=62fcad533149760001149c27, isCurrentDef=true, hasInstance=true, stagePropellerName=ln主从编辑}, ]

Groovy举例

def api_name=context.data.object_describe_api_name as String
def object_id=context.data._id as String
log.info(api_name+","+object_id)
def match_result=Fx.stage.matchDef(api_name,object_id,"1000")
log.info(match_result)

3. 切换阶段推进器(非商机2.0)

Fx.stage.change(<String entityId>, <String objectId>, <String sourceWorkflowId>, <String stageId>, <String userId>)

参数说明

参数 类型 说明
entityId String 对象apiName
objectId String 数据id
sourceWorkflowId String 由预匹配得到的阶段推进器的定义id,参考Fx.stage.matchDef
stageId String 初始化阶段id
userId String 用户id

返回值类型

APIResult

返回值说明

Map

Groovy举例

match_result=Fx.stage.change(api_name,object_id,"61a87f17bb3d4700017f5a78","1","1000")
log.info(match_result)

4. 更新并完成任务

Fx.stage.changeTaskHandler(<String taskId>, <List candidateIds>, <String userId>)

参数说明

参数 类型 说明
taskId String
candidateIds List 要更换的处理列表
userId String 用户id

返回值类型

APIResult

返回值说明

Map

Groovy举例

def rst=Fx.stage.changeTaskHandler(userId,taskId,["1000"])
log.info(rst)

5. 完成选择关联的任务

Fx.stage.completeCreateAndRelatedTask(<String taskId>, <String entityId>, <String objectId>, <String userId>)

参数说明

参数 类型 说明
taskId String
entityId String 对象apiName
objectId String 数据id
userId String

返回值类型

APIResult

返回值说明

Map

Groovy举例

def rst=Fx.stage.completeCreateAndRelatedTask(userId,taskId,entityId,objectId)
log.info(rst)

6. 更新并完成任务

Fx.stage.updateAndCompleteTask(<String taskId>, <Map data>, <String userId>)

参数说明

参数 类型 说明
taskId String
data Map 要更新的数据信息
userId String 用户id

返回值类型

APIResult

返回值说明

Map

Groovy举例

def data=[key:value]
def rst=Fx.stage.updateAndCompleteTask(userId,taskId,data)
log.info(rst)

7. 重新激活

Fx.stage.reactive(<String workflowInstanceId>, <String activeStageId>, <Map data>, <String userId>)

参数说明

参数 类型 说明
workflowInstanceId String 流程实例Id
activeStageId String 激活阶段
data Map 更新表单数据
userId String 用户id

返回值类型

APIResult

返回值说明

Map

Java举例

//重新激活函数demo
//实例id
def workflowInstanceId="62c3da4e0d9f997b27dfd90e"
//要跳转的阶段
def activeStageId="47u3S02Gz"
//重新激活表单填写
Map data= ["field_0mvhC__c": "90"]
def userId= "1000"
def(boolean error, Map result, String message) = Fx.stage.reactive(workflowInstanceId, activeStageId, data, userId)
if (error) {
  log.info("error :" + message)
} else {
  log.info(result)
}

8. 重新激活校验

Fx.stage.reactiveValidate(<String workflowInstanceId>, <String userId>)

参数说明

参数 类型 说明
workflowInstanceId String 流程实例Id
userId String 用户id

返回值类型

APIResult

返回值说明

Map

Groovy举例

//重新激活校验函数接口demo
//实例id
def workflowInstanceId= "62c3da4e0d9f997b27dfd90e"
def userId = context.userId
def(boolean error, Map result, String message) = Fx.stage.reactiveValidate(workflowInstanceId,userId)
if (error) {
  log.info("error: " + message)
} else {
  log.info(result)
}

results matching ""

    No results matching ""