查询复杂流程图数据 - queryActInstInfoByProcId
功能介绍
本接口用于通过流程实例ID查询复杂流程图数据,适用于获取流程执行的详细节点信息、路由路径、操作历史及国际化信息,支持复杂流程(含子流程、并行分支、多实例等)的可视化展示和审计追溯。
与获取导航树 - getNavigateTree接口配合,可展示流程的节点结构;与查询评审记录 - findAllRecord接口配合,可还原流程的完整操作历史;与根据流程实例ID查询关联评审数据列表 - listReviewDatasByInstanceId接口配合,可同时展示流程的业务数据和执行轨迹。
接口约束
本接口支持基础版和体验版数据建模引擎-流程引擎场景。
调用方法
请参见如何调用API。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,当前API调用无需身份策略权限。
URI
GET /services/workflow/processInstance/queryActInstInfoByProcId
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 参数解释: IAM用户的token。 通过调用IAM服务获取用户Token接口获取(即响应消息头中X-Subject-Token的值)。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| X-Application-Id | 是 | String | 参数解释: 应用ID。 您可以在应用设计态的“应用中心 > 应用发布”页面获取,详情请参见应用发布。 约束限制: 不涉及。 取值范围: 由英文字母和数字组成,且长度为32个字符。 默认取值: 不涉及。 |
| X-Tenant-Id | 是 | String | 参数解释: 数据建模引擎运行态租户ID。 您可以从访问流程引擎编排服务的浏览器地址栏中获取。 流程编排服务地址:http://{承载流程编排服务的服务器域名或IP地址}:{流程编排服务的端口号}/{流程编排服务文根}/index.html#/processApplicationForm?tenantId={数据建模引擎运行态租户ID}&applicationId={应用ID} 例如tenantId=-1,表示数据建模引擎运行态默认租户“basicTenant”的租户ID为-1。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| X-User-Id | 是 | String | 参数解释: 请求当前接口时上下文中的用户ID,即OrgID的用户ID。 通过调用OrgID服务的获取用户信息接口获取。 约束限制: 仅基础版数据建模引擎-流程引擎需要配置此参数。 取值范围: 不涉及。 默认取值: 不涉及。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| code | String | 参数解释: 返回状态码,标识接口调用的执行结果。 注意:本接口使用字符串类型的状态码,与其他接口的Integer类型不同。 取值范围: |
| message | String | 参数解释: 返回信息,描述接口调用的结果说明。当code为“500”时,此字段包含具体的错误描述。 取值范围: 不涉及。 |
| resultObj | ActInstanceResult object | 参数解释: 返回单个响应数据,包含流程图的核心信息(路由列表、节点详情、国际化信息等)。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| routeList | Array of strings | 参数解释: 流程中的路由信息列表,包含节点之间的顺序流(Sequence Flow)信息。用于绘制流程图的连接线,展示节点之间的流转路径。数组元素为JSON字符串格式,需解析后获取源节点和目标节点信息。 取值范围: 不涉及。 |
| activityInfo | Array of ActivityInfoVO objects | 参数解释: 流程中节点详细信息列表,包含每个节点的执行状态、操作历史、操作人信息等。按startTime升序排列,即按流程执行的时间顺序展示。 取值范围: 不涉及。 |
| processDefinitionId | String | 参数解释: 该流程的流程模板Key+版本+流程实例ID。格式为{processTemplateKey}:{version}:{deploymentId},用于唯一标识流程定义模板。 取值范围: 不涉及。 |
| processDefinitionKey | String | 参数解释: 该流程的流程模板ID(Key),用于标识流程模板的唯一标识。与流程元模板中的模板Key一致。 取值范围: 不涉及。 |
| i18n | Array of I18nDisplay objects | 参数解释: 国际化信息列表,包含节点名称、描述等字段的多语言翻译。用于前端根据当前语言环境渲染对应的显示文本。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| taskDefineKey | String | 参数解释: 流程节点ID(任务定义Key),用于唯一标识流程模型中的节点定义。与流程元模板中的节点ID一致,可用于关联节点配置和导航树。 取值范围: 不涉及。 |
| taskDefineName | String | 参数解释: 流程节点名,用于展示当前节点的标题。可在流程元模板中配置,或通过i18n字段获取多语言版本。 取值范围: 不涉及。 |
| startTime | String | 参数解释: 流程节点的开始时间,标识节点被创建或开始执行的时间。格式为ISO 8601标准时间字符串(yyyy-MM-dd'T'HH:mm:ss.SSSXXX)。 取值范围: 不涉及。 |
| userAccount | String | 参数解释: 流程节点操作人的Account(账号名),标识执行当前操作的用户登录账号。与userId和userCN共同标识操作人信息。 取值范围: 不涉及。 |
| userCN | String | 参数解释: 流程节点操作人的中文名,用于展示操作人的可读名称。如果操作人未设置中文名,此字段可能为null。 取值范围: 不涉及。 |
| userId | String | 参数解释: 流程节点操作人的用户ID(UUID),用于在分布式系统中唯一标识操作人。与查询人员信息 - getUserInfos接口返回的uuid字段一致。 取值范围: 不涉及。 |
| type | String | 参数解释: 流程节点的类型,标识当前节点在BPMN模型中的角色。用于前端渲染不同类型的节点图标和样式。 取值范围: |
| status | String | 参数解释: 流程节点状态,标识当前节点的执行状态。用于前端渲染节点的颜色和高亮状态。 取值范围: |
| nodeOptCount | Integer | 参数解释: 流程节点操作次数,标识当前节点被执行或操作的累计次数。对于被驳回后重新执行的节点,此计数可能大于1。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| key | String | 参数解释: 国际化数据key值,标识需要翻译的原始文本或标识符。通常为变量名称或描述字段的编码。 取值范围: 不涉及。 |
| value | String | 参数解释: 国际化数据key对应的value值,即翻译后的显示文本。前端根据当前语言环境匹配对应的value值进行展示。 取值范围: 不涉及。 |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码。 |
| error_msg | String | 错误描述。 |
| result | String | 结果。 |
| trace_id | String | 追踪ID。 |
请求示例
GET https://dme.cn-north-4.huaweicloud.cn/workflowRuntime/services/workflow/processInstance/queryActInstInfoByProcId?processInstanceId=47e26735-74f7-11f1-b92f-fa163e3e960a
响应示例
状态码:200
OK
{
"code" : 200,
"message" : "success",
"resultObj" : {
"activityInfo" : [ {
"taskDefineKey" : "StartEvent_1",
"taskDefineName" : "提交任务1",
"startTime" : "2024-11-28T06: 57: 50.793+0000",
"userAccount" : "XDM_Developer",
"userCN" : null,
"userId" : "93172bbfd0f64437956d4c9de9345386",
"type" : "startEvent",
"status" : "finished",
"nodeOptCount" : 1
}, {
"taskDefineKey" : "SubmitTask_1",
"taskDefineName" : "提交任务",
"startTime" : "2024-11-28T06: 57: 50.794+0000",
"userAccount" : "XDM_Developer",
"userCN" : null,
"userId" : "93172bbfd0f64437956d4c9de9345386",
"type" : "userTask",
"status" : "finished",
"nodeOptCount" : 1
}, {
"taskDefineKey" : "Activity_16kgz9u",
"taskDefineName" : "用户任务",
"startTime" : "2024-11-28T06: 57: 50.970+0000",
"userAccount" : "XDM_Developer",
"userCN" : null,
"userId" : "93172bbfd0f64437956d4c9de9345386",
"type" : "userTask",
"status" : "doing",
"nodeOptCount" : 1
} ],
"routeList" : [ null ],
"processDefinitionId" : "Process_xiejia_1126_2:1:a60b112ee2304d84a5432b94e86d81ec",
"processDefinitionKey" : "Process_xiejia_1126_2",
"i18n" : [ null ]
}
} 状态码:400
Bad Request
{
"error_code" : "500",
"error_msg" : "origin is not allowed!",
"result" : "FAIL",
"trace_id" : "2509bee60b3e40asdf9f741d9e23466a9"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | OK |
| 400 | Bad Request |
错误码
请参见错误码。