Files
wecom_it_smart_desk/docs/07-项目管理/任务说明书/任务说明书-REQ-会话-001.md
Simon facc04aa65 chore: docs 结构整改 + compose 双目录对齐(合并重建提交)
本提交为 .git 对象库损坏后的重建提交,内容等价于原先三个本地提交
(5e2fd4c2 / 57a53c98 / 5d7e1873)的累积结果,未做任何额外改动。

一、docs 结构整改(整改 #14)
根因:重构时新结构为 untracked 文件,执行 git stash(未带 -u)未纳入,
随后 git reset 拉回 HEAD 旧 tracked 树,导致旧树复活、新旧两棵目录
树并存于 docs/,共 791 文件、双分类体系冲突。

修复动作:
- b2 同名异主题文件改名迁移保全 9 个
- C 类 39 个孤立文件按主题正确归类
- A/B1 类 222 个重复文件删除(新结构已有内容副本)
- 9 个旧独有空目录删除
- 270 处内部引用按 verified 映射改写
- 整改记录 #14 登记于 04-运维文档/部署运维

结果:docs 791 → 569 文件,顶层仅规范 8 类 + 治理文件,单树恢复。
残留:约 20 处指向从未存在文件的陈旧死链,归入独立文档卫生任务。

二、compose 双目录对齐(消除踩坑 A)
- docker-compose.yml:nginx 前端挂载全部由根目录 frontend-*/dist
  改为 src/frontend-*/dist(h5 / agent / admin / terminal)
- docker-compose.dev.yml:dev 服务 build context 与卷同步改 src/
- 效果:本地 docker compose up 不再把根目录 stale dist 挂回,
  与线上一致,分叉隐患消除(已 docker compose config 校验通过)

防复发铁律:
- 重构须提交;仓库修复须 git stash -u 或先 commit
- 新结构须 git add 并提交,避免再次 untracked 复活
- H5 改动只动 src/frontend-h5/,禁改根目录遗留 frontend-*/
2026-08-07 22:31:32 +08:00

5.5 KiB
Raw Permalink Blame History

任务说明书 - 员工结束会话功能

版本: v1.0 | 日期: 2026-07-24 | 任务ID: #REQ-会话-001


📋 基本信息

项目 内容
任务名称 员工结束会话功能
任务ID #REQ-会话-001
优先级 🟠P1
类型 功能开发
状态 开发完成,待测试
负责人 宋献
创建日期 2026-07-24
计划完成日期 2026-07-24
测试人员 宋献
测试依据 PRD、技术方案、原型图、验收标准

📥 输入项来源

产品需求(PRD

来源文档 相关章节 说明
01-产品文档/02-会话管理/PRD-REQ-会话-001-员工结束会话-v1.0.archive.md §1.1-1.2 需求背景、目标
01-产品文档/02-会话管理/PRD-REQ-会话-001-员工结束会话-v1.0.archive.md §3.1 按钮状态机设计
01-产品文档/02-会话管理/PRD-REQ-会话-001-员工结束会话-v1.0.archive.md §3.2-3.3 结束流程、评价组件
01-产品文档/02-会话管理/PRD-REQ-会话-001-员工结束会话-v1.0.archive.md §五 验收指标

技术方案

来源文档 相关章节 说明
02-技术文档/技术方案-REQ-会话-001-员工结束会话-v1.0.archive.md §3.1-3.3 状态机设计、组件改动
02-技术文档/技术方案-REQ-会话-001-员工结束会话-v1.0.archive.md §3.4 弹窗设计
02-技术文档/技术方案-REQ-会话-001-员工结束会话-v1.0.archive.md §六 风险与依赖

原型设计

来源文档 页面 说明
01-产品文档/02-会话管理/原型-REQ-会话-001-结束会话流程-v1.0.archive.html 全部 按钮状态切换、评价弹窗

需了解的现有代码(历史现状)

模块/文件 说明 需了解的内容
frontend-h5/src/components/chat/InputBar.vue 输入栏组件 现有按钮状态定义、样式、事件触发方式
frontend-h5/src/components/chat/CallAgentModal.vue 呼叫坐席弹窗 复用现有逻辑
frontend-h5/src/components/chat/ResolveFeedback.vue 满意度评价组件 复用评价逻辑、事件emit方式
frontend-h5/src/views/ChatPanel.vue 会话主面板 状态管理、事件处理

📤 输出成果要求

交付物清单

# 交付物 类型 说明
1 InputBar.vue 代码 新增 waiting/connected 状态及样式
2 ChatPanel.vue 代码 新增事件处理(取消排队、结束会话)
3 会话状态管理 代码 状态流转逻辑

代码要求

  • 遵循项目代码规范
  • 新增状态需与现有状态(hidden/disabled/active)兼容
  • 样式复用现有按钮样式体系

文档要求

  • 无需新增文档

🔧 验证方式

功能验证

验证项 验证方法 预期结果
人工咨询按钮 手动点击 显示"人工咨询",点击触发呼叫
排队等待按钮 模拟排队状态 显示"排队等待",点击弹出确认框
结束咨询按钮 模拟坐席接入 显示"结束咨询",点击弹出评价
评价提交 提交评价 评价成功提交,窗口自动关闭
新会话 重新进入 显示全新会话(无历史消息)

安全验证

验证项 验证方法 预期结果
权限控制 未登录状态 无法结束会话

性能验证

验证项 验证方法 预期结果
响应时间 提交评价API < 200ms

完成标准

验收条件

  • 代码合入主干分支
  • 功能测试通过(按钮状态切换正确)
  • 评价提交流程正常
  • 窗口关闭功能正常

产出确认

  • InputBar.vue 代码已完成
  • ChatPanel.vue 代码已完成
  • stores/conversation.ts 方法已添加
  • api/conversation.ts API 已添加
  • 本地构建验证通过
  • 功能测试通过

📊 工作分解

子任务

子任务 负责人 预估工时 状态
InputBar.vue 状态扩展 [待定] 2h 待开始
ChatPanel.vue 事件对接 [待定] 1h 待开始
窗口关闭逻辑 [待定] 1h 待开始
样式调整 [待定] 0.5h 待开始
联调测试 [待定] 1.5h 待开始

预估总工时:6h


📞 依赖与阻塞

前置依赖

依赖任务 依赖说明 状态
后端API可用 /h5/conversations/current/close 待确认
评价组件可用 ResolveFeedback.vue 已确认

阻塞因素

阻塞项 影响范围 解决方案
WebSocket推送 排队状态、坐席接入状态同步 增加轮询兜底

📈 变更记录

日期 变更内容 变更人 说明
2026-07-24 创建任务 宋献 初始版本
2026-07-24 完成代码开发 宋献 实现四态按钮(disabled/active/waiting/serving

📎 附件

  • PRD01-产品文档/02-会话管理/PRD-REQ-会话-001-员工结束会话-v1.0.archive.md
  • 技术方案:02-技术文档/技术方案-REQ-会话-001-员工结束会话-v1.0.archive.md
  • 原型图:01-产品文档/02-会话管理/原型-REQ-会话-001-结束会话流程-v1.0.archive.html