132 lines
2.3 KiB
Markdown
132 lines
2.3 KiB
Markdown
# 7. 飞书通知详细设计
|
|
|
|
## 1. 设计目标
|
|
|
|
本步骤负责在审核任务执行完成或执行异常时,通过飞书 `@` 对应处理人,并回传 Web 详情链接。
|
|
|
|
V1 当前 Demo 固定通知策略:
|
|
|
|
1. 执行完成后发送结果摘要并 `@` 处理人
|
|
2. 执行异常后发送异常摘要并 `@` 处理人
|
|
|
|
## 2. 角色信息模型
|
|
|
|
责任人信息不再只保留角色名,必须扩展为可通知实体,至少包含:
|
|
|
|
1. `owner_role`
|
|
2. `owner_name`
|
|
3. `department`
|
|
4. `chapter_scope`
|
|
5. `risk_scope`
|
|
6. `feishu_user_id`
|
|
7. `feishu_open_id`
|
|
8. `feishu_name`
|
|
9. `notify_enabled`
|
|
|
|
## 3. 输入
|
|
|
|
1. `batch_id`
|
|
2. `conversation_id`
|
|
3. `product_name`
|
|
4. `notify_reason`
|
|
5. `registration_risk_report`
|
|
6. `registration_word_export_report`
|
|
7. `owner_mapping`
|
|
|
|
其中 `notify_reason` 固定支持:
|
|
|
|
1. `task_completed`
|
|
2. `task_failed`
|
|
|
|
## 4. 输出对象
|
|
|
|
`feishu_notification_report` 至少包含:
|
|
|
|
1. `batch_id`
|
|
2. `conversation_id`
|
|
3. `notify_reason`
|
|
4. `mentioned_users`
|
|
5. `message_status`
|
|
6. `web_detail_url`
|
|
7. `receipt`
|
|
|
|
## 5. 主流程
|
|
|
|
```text
|
|
任务完成或异常
|
|
-> 读取责任角色与飞书账号
|
|
-> 构建飞书摘要
|
|
-> 构建 @ 处理人载荷
|
|
-> 发送飞书消息
|
|
-> 写回发送回执
|
|
-> 写入处理历史和审计
|
|
```
|
|
|
|
## 6. 通知内容要求
|
|
|
|
飞书消息至少应包含:
|
|
|
|
1. 任务名称
|
|
2. 产品名称
|
|
3. 批次号
|
|
4. 结果状态
|
|
5. 风险等级或异常摘要
|
|
6. `@` 处理人
|
|
7. Web 详情链接
|
|
|
|
## 7. 处理完成通知
|
|
|
|
触发条件:
|
|
|
|
1. 目录汇总完成
|
|
2. 风险报告完成
|
|
3. 导出状态已生成
|
|
|
|
输出重点:
|
|
|
|
1. 风险等级
|
|
2. 是否允许正式导出
|
|
3. 责任人
|
|
|
|
## 8. 执行异常通知
|
|
|
|
触发条件:
|
|
|
|
1. 资料解析失败
|
|
2. 规则执行失败
|
|
3. 回填导出失败
|
|
4. 外部依赖异常
|
|
|
|
输出重点:
|
|
|
|
1. 异常阶段
|
|
2. 异常摘要
|
|
3. 责任人
|
|
4. 是否建议人工介入
|
|
|
|
## 9. 与页面关系
|
|
|
|
### 9.1 审核智能体
|
|
|
|
可展示:
|
|
|
|
1. 本次是否已触发飞书通知
|
|
2. 飞书发送状态
|
|
3. 被 `@` 的处理人
|
|
|
|
### 9.2 处理历史
|
|
|
|
可回看:
|
|
|
|
1. 通知原因
|
|
2. 接收人
|
|
3. 消息状态
|
|
4. Web 回链
|
|
|
|
## 10. 验收标准
|
|
|
|
1. 角色信息包含飞书账号相关字段。
|
|
2. 执行完成与执行异常两类通知链路完整。
|
|
3. 飞书消息支持直接 `@` 对应处理人。
|
|
4. 通知结果可在处理历史和审计中回溯。
|