Files
wecom_it_smart_desk/docs/04-运维文档/部署运维/DEPLOY-集成-002-分配模式Tab收编.md
T
Simon 44e77dcb0e chore(docs): docs/ 目录全面重新编号 + 重组
**重构前**(旧编号 02-11):
- docs/02-产品需求/      → 00 产品规划/PRD
- docs/03-技术架构/      → 01-05 子目录散落
- docs/04-原型设计/      → 01-02 产品设计(HTML 原型)
- docs/05-原型设计/      → screens/
- docs/06-测试素材/      → 02-E2E / 03-功能 / 04-版本测试
- docs/07-项目管理/      → 任务说明书/日报/计划
- docs/08-安全审计/      → 审计报告
- docs/09-堡垒运维/      → toolbox / deploy
- docs/10-项目管理/      → 任务说明书(重复)
- docs/11-历史归档/      → deploy-nas-archived

**重构后**(新编号 00-07,语义化):
- docs/00-产品开发流程与文档管理规范.md
- docs/00-版本迭代总览.md
- docs/01-产品文档/      (PRD/原型/认证/会话/AI 服务/坐席/集成)
- docs/02-技术文档/      (技术方案/架构图/重构记录/前端改造/实现配置)
- docs/03-测试文档/      (E2E/功能用例/版本报告/缺陷单)
- docs/04-运维文档/      (部署运维/运维指南)
- docs/05-运营文档/      (品牌推广/用户手册)
- docs/06-安全审计/      (审计报告)
- docs/07-项目管理/      (任务说明书/日报/计划/看板)

**净收益**:
- 目录编号与产品文档管理规范对齐(按文档阶段 01-07 编号)
- 消除 02-产品需求 与 10-项目管理 的编号重叠
- 子目录按文档类型分组(如 01-产品文档/00-产品规划、01-产品文档/01-认证与登录)
- 把运维/安全/项目管理从 0X 散落改为 04/06/07

合计 494 文件 + 78495 行 / - 14076 行
2026-08-03 18:46:55 +08:00

159 lines
5.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 部署运维补充说明 — 分配模式 Tab 收编(v1.2)
> **关联变更**: 管理后台 v1.2 分配模式 Tab 收编(REQ-集成-002-v1.2
> **部署日期**: 2026-07-28
> **版本**: v1.0
> **关联文档**:
> - PRD: `docs/01-产品文档/08-集成生态/PRD-REQ-集成-002-管理后台-v1.0.md`v1.2
> - 技术方案: `docs/02-技术文档/技术方案-REQ-集成-002-管理后台v1.2-分配模式Tab收编.md`
> - 任务说明书: `docs/07-项目管理/任务说明书/任务说明书-REQ-集成-002-分配模式Tab收编.md`
---
## 一、变更摘要
| 维度 | 变更 |
|------|------|
| 前端 | `frontend-admin/src/views/Agents.vue``<el-tabs>` + 第 2 Tab「分配策略」 |
| 前端 | `frontend-admin/src/views/AssignmentMode.vue` 文件保留 + 加停用注释 |
| 前端 | `frontend-admin/src/router/index.ts` 删除 `/admin/assignment-mode` 路由项 |
| 前端 | `frontend-admin/src/views/Layout/menu.ts` 删除「分配模式」菜单项 + `Sort` icon import |
| 后端 | **无改动** |
| 数据库 | **无改动**`system_configs.assignment_mode` 仍存) |
---
## 二、部署前 checklist
- [ ] PRD v1.2 已更新
- [ ] 原型图 v1.2 已同步
- [ ] 技术方案 v1.0 已建
- [ ] 测试用例 TC-集成-002 已建(31 条用例)
- [ ] 任务说明书已建
- [ ] 本地中文路径 `D:\资料\03-项目开发\wecom_it_smart_desk\src\frontend-admin\` 已改
- [ ] ASCII 路径 `D:\dev\wecom\src\frontend-admin\` 已同步改(**多路径同步铁律**
- [ ] `npm run build` 通过(无 TS 报错)
- [ ] dist `assets/Agents-*.js``agents-assignment` / `agents-list` / `手动接单` 等字符串
---
## 三、部署流程
### 3.1 压缩 dist
```powershell
Compress-Archive -Path "D:\dev\wecom\src\frontend-admin\dist\*" -DestinationPath "D:\dev\wecom\dist-admin-v1.2-tab.zip" -Force
```
### 3.2 上传到服务器 /tmp
```powershell
& "C:\Users\simon\.workbuddy\binaries\python\versions\3.13.12\python.exe" "C:\Users\simon\.workbuddy\skills\jumpserver-V2\scripts\v2_ops.py" upload "D:\dev\wecom\dist-admin-v1.2-tab.zip" "dist-admin-v1.2-tab.zip"
```
### 3.3 服务器解压到 nginx 路径
```bash
cd /tmp
unzip -o dist-admin-v1.2-tab.zip -d /tmp/admin-v1.2-extract
rm -rf /opt/wecom-it-desk/frontend-admin/dist
mv /tmp/admin-v1.2-extract /opt/wecom-it-desk/frontend-admin/dist
```
### 3.4 重启 nginx(必做!bind mount 不会自动刷新)
```bash
docker restart wecom_it_nginx
```
### 3.5 验证
```bash
# 1. 主入口 200
curl -I http://localhost/itadmin/
# 2. 分配模式 API 仍 200
curl -H 'X-Forwarded-For: 10.240.1.100' http://localhost:8000/admin/assignment-mode
```
### 3.6 浏览器手验(需企业微信扫码登录)
1. 访问 `https://itsupport.servyou.com.cn/itadmin/login` → 扫码登录
2. 进"运营中心 → 坐席管理"
3. 应看到两个 Tab:「坐席列表」「分配策略」
4. 点「分配策略」 → 6 张模式卡片(手动接单高亮 + 其余 5 个锁定)
5. 引导条:「当前坐席 X 人足以承担,手动接单完全满足...」
---
## 四、回滚预案(30 分钟可逆撤销)
> 阶段二/三若分配模式膨胀(权重配置、技能匹配规则),可拆回独立页。
### 步骤 1:恢复路由
`src/frontend-admin/src/router/index.ts`
```diff
+ {
+ path: 'assignment-mode',
+ name: 'AssignmentMode',
+ component: () => import('@/views/AssignmentMode.vue'),
+ meta: { title: '消息分配模式', priority: 'P1' },
+ },
```
### 步骤 2:恢复菜单项
`src/frontend-admin/src/views/Layout/menu.ts`
```diff
+ import { ..., Sort } from '@element-plus/icons-vue'
+
+ {
+ path: '/admin/assignment-mode',
+ meta: { title: '分配模式', icon: Sort, priority: 'P1' },
+ // ...其他元数据
+ },
```
### 步骤 3:把 Tab 2 内容搬回 `AssignmentMode.vue`
1. 删除 `AssignmentMode.vue` 顶部 "v1.2 起停用" 注释
2.`Agents.vue` 第 2 个 `<el-tab-pane>` 内复制:
- `modes` 数组(含 6 模式配置)
- `currentMode` ref
- `selectMode` 函数
- `getModeDescription` 函数
- `getLockReason` 函数
- 模板(`<div class="mode-list">` + 6 张 `.mode-card`
3. 复制 `Agents.vue` 中引导条组件(或独立组件化)
### 步骤 4:恢复 `Agents.vue` 单一结构
`src/frontend-admin/src/views/Agents.vue`
```diff
- <el-tabs v-model="activeTab">
- <el-tab-pane label="坐席列表" name="agents-list"> ... </el-tab-pane>
- <el-tab-pane label="分配策略" name="agents-assignment"> ... </el-tab-pane>
- </el-tabs>
+ <!-- 移除 el-tabs 包装,原 Tab 1 内容提升到顶层 -->
```
### 步骤 5build + 部署
重复 § 三 流程。
### 步骤 6:归档本次 v1.2 文档
- 任务说明书状态改为 `[已废弃]`
- TC-集成-002 标记为已废弃(保留作为历史记录)
- PRD v1.2 头部加 "v1.2 已废弃,已回滚到 v1.3 独立页" 注释
**总耗时估算**30 分钟(步骤 1-4 约 20 min,步骤 5-6 约 10 min)。
---
## 五、变更日志
| 版本 | 日期 | 变更 | 变更人 |
|------|------|------|--------|
| v1.0 | 2026-07-28 | 初版(v1.2 部署补充说明) | 宋献 |