# 部署运维补充说明 — 分配模式 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` 加 `` + 第 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 个 `` 内复制: - `modes` 数组(含 6 模式配置) - `currentMode` ref - `selectMode` 函数 - `getModeDescription` 函数 - `getLockReason` 函数 - 模板(`
` + 6 张 `.mode-card`) 3. 复制 `Agents.vue` 中引导条组件(或独立组件化) ### 步骤 4:恢复 `Agents.vue` 单一结构 `src/frontend-admin/src/views/Agents.vue`: ```diff - - ... - ... - + ``` ### 步骤 5:build + 部署 重复 § 三 流程。 ### 步骤 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 部署补充说明) | 宋献 |