在 钉钉宜搭(DingTalk YiDa) 的「获取审批记录」相关接口中,返回字段 taskHoldTimeGMT 的含义如下:
✅ taskHoldTimeGMT 含义
任务停留时间(GMT 时间格式)
该字段表示:当前审批任务在该节点(或该处理人)处停留的起始时间,采用 GMT(格林威治标准时间)格式。
🔍 详细解释
| 项目 | 说明 |
|---|---|
| 字段名 | taskHoldTimeGMT |
| 中文含义 | 任务在当前审批节点的停留开始时间 |
| 时间格式 | GMT 时间格式,例如:"Mon, 07 Oct 2024 08:30:25 GMT" |
| 用途 | 表示该审批任务何时到达当前处理人,即该处理人开始可以处理此任务的时间。可用于计算审批时效、超时提醒等。 |
| 对应场景 | 在一个审批流程中,当任务流转到某个审批人时,系统会记录 taskHoldTimeGMT,直到该审批人处理完成(同意/拒绝),这段时间即为“停留时间”。 |
🔄 对比其他类似字段
| 字段名 | 含义 | 时间格式 | 说明 |
|---|---|---|---|
taskHoldTimeGMT | 任务到达当前节点的时间(GMT) | Mon, 07 Oct 2024 08:30:25 GMT | 常用于系统间时间比对 |
taskHoldTime | 任务到达当前节点的时间(本地时间) | 2024-10-07 16:30:25(UTC+8) | 更适合前端展示 |
finishTime / endTime | 审批人处理完成的时间 | 2024-10-07 16:35:40 | 表示该节点处理结束时间 |
duration | 节点处理耗时(秒) | 315 | 可通过 finishTime - taskHoldTime 计算得出 |
📌 使用场景示例
假设一个请假审批流程:
员工提交 → 部门主管审批
系统记录
taskHoldTimeGMT: "Mon, 07 Oct 2024 08:30:25 GMT"换算为北京时间(UTC+8):2024-10-07 16:30:25
主管在 17:00:00 处理完成
则该节点停留时长 =
26分35秒
可用于:
统计审批效率
设置超时自动提醒
生成审批时效报表
⚠️ 注意事项
GMT vs CST
taskHoldTimeGMT是 GMT 时间(UTC+0),而中国使用的是 CST(UTC+8),使用时需注意时区转换:// 示例:GMT 转 北京时间 const gmtTime = "Mon, 07 Oct 2024 08:30:25 GMT"; const beijingTime = new Date(gmtTime).toLocaleString('zh-CN', {timeZone: 'Asia/Shanghai'}); // 结果:2024/10/7 16:30:25仅适用于审批任务节点
该字段通常出现在审批实例的 每个任务节点(task) 中,而不是整个流程的顶层字段。可能为空
如果任务尚未到达某节点(如跳过审批),则taskHoldTimeGMT可能为空。
✅ 总结
| 字段 | 含义 |
|---|---|
taskHoldTimeGMT | 任务到达当前审批人的时间(GMT 格式) |
| 用途 | 计算审批停留时间、超时监控、流程效率分析 |
| 建议使用 | 与 finishTime 配合使用,计算各节点处理时长 |
📌 一句话总结:taskHoldTimeGMT 是审批任务在当前处理人处开始等待处理的时间(GMT),是分析审批时效的关键字段。使用时注意时区转换即可。