查询待办工作项接口
接口
HttpPost: api/FrontEnd/CartUnfinishWorkItems
按指定用户账号查询其未完成的流程待办。接口返回待办卡片基础信息、当前处理人、表单模板解析结果和表单跳转地址。
路径大小写不敏感,cartUnFinishWorkItems 也可通过外部业务服务配置访问。
请求头
| 参数名 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
Authorization | string | 是 | 登录令牌,格式为 Bearer {token}。 |
TnCode | string | 是 | 租户编码。 |
UserId | string | 条件必填 | 数据令牌计算使用的用户标识。非本机或非 IP 白名单环境调用时必填。 |
Timestamp | string | 条件必填 | 非本机或非 IP 白名单环境调用时必填。推荐使用 13 位 Unix 毫秒时间戳。 |
Datatoken | string | 条件必填 | 非本机或非 IP 白名单环境调用时必填。 |
本机或 IP 白名单环境调用时,仍必须携带 Authorization,但不需要 Timestamp 和 Datatoken。
请求参数
请求体类型为 PageParams。
| 参数名 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
UserCode | string | 是 | 要查询的用户账号编码。系统会将其解析为用户 ObjectID。 |
PagingInfo | object | 是 | 分页信息。当前实现会写入分页统计,不能省略。 |
PagingInfo.PageIndex | int | 是 | 页码,从 1 开始。 |
PagingInfo.PageSize | int | 是 | 每页数量,应大于 0。 |
BelongsApp | string | 否 | 限定所属应用编码。 |
SearchCondition | array | 否 | 待办筛选条件。仅处理下表中的字段。 |
SearchCondition 字段
Name | Value 格式 | 说明 |
|---|---|---|
WorkFlowCode | code1,code2 | 流程或功能菜单编码,多个编码用英文逗号分隔。 |
SequenceNo | string | 流程流水号,按包含关系匹配。 |
StartTime | date-time string | 接收时间大于等于该时间。 |
EndTime | date-time string | 接收时间小于等于该时间。 |
请求示例
{
"UserCode": "administrator",
"PagingInfo": {
"PageIndex": 1,
"PageSize": 20
},
"BelongsApp": "app_code",
"SearchCondition": [
{
"Name": "WorkFlowCode",
"Value": "purchase_apply,leave_apply"
},
{
"Name": "StartTime",
"Value": "2026-08-01 00:00:00"
},
{
"Name": "EndTime",
"Value": "2026-08-31 23:59:59"
}
]
}
返回结果
成功响应统一封装为 BaseResultModel:
| 参数名 | 类型 | 说明 |
|---|---|---|
Code | int | HTTP 状态码,成功为 200。 |
Message | string | 成功时为空字符串。 |
Status | int | 成功为 1。 |
Result.CartType | string | 固定为 todo,表示待办。 |
Result.Datas | array | 待办工作项列表。 |
Result.PagingInfo | object | 分页结果。 |
Datas 工作项字段
| 参数名 | 类型 | 说明 |
|---|---|---|
FlowItemId | string | 待办工作项 ID。 |
FlowId | string | 流程实例 ID。 |
DataId | string | 关联业务数据 ID。 |
WorkFlowCode | string | 流程或功能菜单编码。 |
Title | string | 根据表单显示名称模板解析后的标题。 |
Description | string | 根据表单描述模板解析后的描述。 |
SequenceNo | string | 流程流水号。 |
State | int | 业务数据状态值。 |
Originator | string | 发起人 ID。 |
OriginatorName | string | 发起人名称。 |
OriginatorUnitName | string | 发起人组织名称。 |
ReceiveTime | string | 接收时间,格式为 yyyy-MM-dd HH:mm。 |
OriginateTime | string | 流程发起时间,格式为 yyyy-MM-dd HH:mm。 |
Participants | array | 当前流程处理人列表。 |
AppIcon | string | 所属应用图标。 |
AppIconIsUploadIcon | boolean | 是否为上传的应用图标。 |
IsBatchProcessing | boolean | 是否支持批量处理。 |
IsLock | boolean | 当前待办是否被锁定。 |
MessageTemplet | string | 经过平台配置解析后的消息模板。 |
MessageTempletValue | string | 使用业务表单数据替换模板变量后的消息内容。 |
formLink | string | 当前用户访问表单编辑页的相对地址。 |
返回示例
{
"Code": 200,
"Message": "",
"Result": {
"CartType": "todo",
"Datas": [
{
"FlowItemId": "c76f48a0-6b2c-4d4a-9a3b-1be8a9e321ab",
"FlowId": "a2d398d0-87aa-47ef-8f9e-5977954f30e5",
"DataId": "6b8c060b-73b4-49f8-af2a-3c536eb9a01d",
"WorkFlowCode": "purchase_apply",
"Title": "采购申请-笔记本电脑",
"Description": "采购部提交的采购申请",
"SequenceNo": "CGSQ-202608-0001",
"State": 0,
"Originator": "18f923a7-5a5e-426d-94ae-a55ad1a4b239",
"OriginatorName": "张三",
"OriginatorUnitName": "采购部",
"ReceiveTime": "2026-08-06 09:30",
"OriginateTime": "2026-08-06 09:15",
"Participants": [
{
"Participant": "20c3f900-8e3b-4c8b-b5a1-3e91f34d7b11",
"ParticipantName": "李四",
"OrgUnit": "审批部",
"State": 0
}
],
"AppIcon": "shopping-cart",
"AppIconIsUploadIcon": false,
"IsBatchProcessing": false,
"IsLock": false,
"MessageTemplet": "{Originator}提交了{AppItemName},流程编号为{SequenceNo}",
"MessageTempletValue": "张三提交了采购申请,流程编号为CGSQ-202608-0001",
"formLink": "/dataform?authcode=...&formCode=purchase_apply&dataId=6b8c060b-73b4-49f8-af2a-3c536eb9a01d&formViewType=edit"
}
],
"PagingInfo": {
"PageIndex": 1,
"PageSize": 20,
"PageCount": 1,
"DataCount": 1
}
},
"Status": 1
}
说明
- 接口固定查询
UserCode对应用户的未完成工作项。 - 结果按待办接收时间
ReceiveTime倒序排列。 - 服务端会读取业务表单数据并解析标题、描述和消息模板;如果对应表单或模板不存在,相关字段可能为空。
formLink包含当前用户访问表单所需的临时认证参数,不应写入日志或公开传播。- 用户账号不存在、分页参数不合法或认证失败时,接口返回错误响应。