Files
wecom_it_smart_desk/docs/08-历史归档/部署包-2026-06-16-v0.5.2-archived-20260704.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

4.6 KiB

部署包 v0.5.2(2026-06-16)

📦 包含文件

文件 大小 路径 说明
deploy-h5-v2.tar 645 KB 本地 D:\资料\03-项目开发\wecom_it_smart_desk\deploy-h5-v2.tar H5 前端强化版骨架屏
deploy-backend-v052.tar 2.5 MB 本地 D:\资料\03-项目开发\wecom_it_smart_desk\deploy-backend-v052.tar 后端 3 个 hotfix

🔄 改动清单(本次)

后端 3 个 hotfix

  1. backend/app/main.py — 审批链接 seed 重写(6 条一站式运维平台真实工单)
  2. backend/app/api/h5.py:836-846messages.id UUID 比较 → 字符串比较(防 PG 报 "operator does not exist: character varying = uuid")
  3. backend/app/api/ws.py:38,196 — 移除 request: Request 参数,改用 websocket.headers / websocket.query_params(修 WS 连接失败)

H5 前端 1 个强化

  1. frontend-h5/index.html + main.ts + App.vue + router/index.ts
    • 骨架屏 CSS 强化(logo 64px + 阴影 + 脉冲动画)
    • 显式 body.app-loaded 类名 + 最小 500ms 显示(代替易失效的 :empty 选择器)
    • ChatView 改静态 import(去掉 301KB 二次请求)

🚀 部署步骤(PuTTY 一次跑完)

步骤 1:WinSCP 上传 2 个包到 /tmp/

  • deploy-h5-v2.tar (645 KB)
  • deploy-backend-v052.tar (2.5 MB)

步骤 2:覆盖部署 H5 前端

rm -rf /opt/wecom-it-desk/frontend-h5/dist
mkdir -p /opt/wecom-it-desk/frontend-h5/dist
tar -xf /tmp/deploy-h5-v2.tar -C /opt/wecom-it-desk/frontend-h5/dist
grep -c "app-loaded" /opt/wecom-it-desk/frontend-h5/dist/index.html

期望输出:≥ 1(新特征字符串)

步骤 3:覆盖部署后端 3 个 hotfix

# 先备份
cp -r /opt/wecom-it-desk/backend/app /opt/wecom-it-desk/backend/app.bak-$(date +%Y%m%d-%H%M)
# 解压新代码到 /tmp/backend-new
mkdir -p /tmp/backend-new
tar -xf /tmp/deploy-backend-v052.tar -C /tmp/backend-new
# 复制到 backend 目录(只覆盖改过的 3 个文件)
cp /tmp/backend-new/backend/app/main.py /opt/wecom-it-desk/backend/app/main.py
cp /tmp/backend-new/backend/app/api/h5.py /opt/wecom-it-desk/backend/app/api/h5.py
cp /tmp/backend-new/backend/app/api/ws.py /opt/wecom-it-desk/backend/app/api/ws.py
# 重启 backend 容器生效
docker restart wecom_it_backend
# 验证启动成功(看启动日志,无报错即可)
docker logs --tail 20 wecom_it_backend

步骤 4:让审批链接重新 seed(数据库操作)

# 进入 backend 容器执行 SQL
docker exec -it wecom_it_postgres psql -U wecom -d wecom_it_desk -c "DELETE FROM approval_links;"
# 重启 backend 让 seed 重新跑
docker restart wecom_it_backend
# 验证:看 approval_links 应该有 10 条(6 IT + 2 HR + 1 行政 + 1 财务)
docker exec -it wecom_it_postgres psql -U wecom -d wecom_it_desk -c "SELECT category, COUNT(*) FROM approval_links GROUP BY category;"

期望输出:6 条 IT + 2 条 HR + 1 条 行政 + 1 条 财务

步骤 5:验证 /itadmin/ 403 + 一站式运维平台链接

  1. 走企微入口:企微 → IT 数据查询平台(或类似应用) → 进 /itadmin/ → 转外部浏览器
  2. 预期:不再 403,正常加载管理后台
  3. H5 端:
    • 企微 → IT 智能服务台 → /itdesk/ → 转外部浏览器
    • 右侧"常用资源"标签里应该看到 6 条新 IT 工单链接
  4. 后端 WebSocket:
    • 坐席工作台 /itagent/ 打开 → 浏览器 F12 → Network → 看 ws://... 状态应该是 101 Switching Protocols 而不是失败

⚠️ 出错兜底(3 秒回滚)

# H5 回滚
rm -rf /opt/wecom-it-desk/frontend-h5/dist
mv /opt/wecom-it-desk/frontend-h5/dist.bak-最新时间戳 /opt/wecom-it-desk/frontend-h5/dist
# 后端回滚
rm -rf /opt/wecom-it-desk/backend/app
mv /opt/wecom-it-desk/backend/app.bak-最新时间戳 /opt/wecom-it-desk/backend/app
docker restart wecom_it_backend
# 审批链接恢复
docker exec -it wecom_it_postgres psql -U wecom -d wecom_it_desk -c "DELETE FROM approval_links; INSERT INTO approval_links(...) VALUES(...);"
# (或从 alembic 之前的 migration 找原始 seed 数据)

📝 验证清单(用户跑完部署后逐项打勾)

  • H5 骨架屏:浏览器访问 /itdesk/ 看到蓝色 logo + 文字
  • /itadmin/ 不再 403
  • H5 常用资源 6 条 IT 工单链接(点开能跳到 devops.dc.servyou-it.com)
  • /itagent/ WebSocket 连接成功(F12 Network 看 WS 状态 101)
  • /itportal/ 业务功能正常

部署包生成时间:2026-06-16 08:17 版本:v0.5.2 配套文档:本文件 部署包-2026-06-16-v0.5.2.md