Files
wecom_it_smart_desk/docs/IT智能服务台-版本更新说明-20250614.md

4.7 KiB
Raw Permalink Blame History

IT智能服务台 - 版本更新说明

版本: v1.1.0 更新日期: 2026-06-14 文档状态: 待审核


一、本次更新内容

1.1 新增功能

功能 说明 优先级
消息撤回 2分钟内可撤回自己的消息 P0
消息删除 删除自己的消息 P0
消息状态 支持 sending/sent/delivered/read/recalled 状态 P0
标记已读 一键标记会话已读 P1
图片上传 支持图片上传(≤10MB P1
文件上传 支持文件上传(≤10MB P1

1.2 架构优化

优化项 说明
Health Check 所有容器已配置健康检查
自动重启 容器崩溃自动重启(restart: unless-stopped
AI Gateway 设计 预留多模型切换架构

1.3 安全增强

功能 说明
OTP 双因素认证 访问管理后台时二次验证
操作审计 关键操作日志记录(规划中)

二、需要同步的代码

2.1 后端文件

文件 改动 说明
app/models/message.py 修改 添加 status、recallable_until 字段
app/api/messages.py 修改 添加撤回/删除/标记已读/上传 API
app/api/ws_manager.py 修改 添加消息状态广播
docker-compose.yml 修改 healthcheck 已配置

2.2 数据库变更

-- 需要执行的 SQL 迁移
ALTER TABLE messages ADD COLUMN status VARCHAR(20) DEFAULT 'sent';
ALTER TABLE messages ADD COLUMN recallable_until TIMESTAMP;

2.3 前端文件(如果有)

文件 说明
消息操作菜单 撤回/删除按钮
消息状态显示 状态图标
已读标记 一键已读

三、部署步骤

3.1 本地打包

# 后端打包
cd backend
docker build -t wecom-it-desk-backend:latest .

# 导出镜像
docker save wecom-it-desk-backend:latest -o wecom-it-desk-backend.tar

3.2 服务器部署

# 1. 上传镜像到堡垒机
# 堡垒机: sxn@10.212.189.210:2222 (OTP)
# 目标路径: /tmp/

# 2. SSH 到正式服务器
ssh sxn@10.212.189.210 -p 2222
ssh 10.90.5.110

# 3. 导入镜像
docker load -i /tmp/wecom-it-desk-backend.tar

# 4. 解决容器冲突(重要!)
docker rm -f wecom_it_redis wecom_it_backend wecom_it_postgres wecom_it_nginx 2>/dev/null

# 5. 重新启动
docker compose -p root up -d

# 6. 执行数据库迁移
docker compose exec backend python -c "from app.database import engine; engine.execute('ALTER TABLE messages ADD COLUMN status VARCHAR(20) DEFAULT 'sent'')"

四、验证清单

4.1 健康检查

检查项 命令 预期结果
后端服务 curl -s http://localhost:8000/health {"status": "ok"}
Nginx curl -s http://localhost:80/itdesk/health {"status": "ok"}
数据库 docker compose exec backend python -c "from app.database import engine; print('OK')" OK
Redis docker compose exec redis redis-cli ping PONG

4.2 API 测试

API 方法 测试命令
撤回消息 POST curl -X POST http://localhost:8000/api/messages/{id}/recall
删除消息 DELETE curl -X DELETE http://localhost:8000/api/messages/{id}
标记已读 POST curl -X POST http://localhost:8000/api/conversations/{id}/mark-read
图片上传 POST curl -X POST -F "file=@test.jpg" http://localhost:8000/api/messages/image

4.3 功能测试

功能 测试场景 预期结果
消息发送 发送文本消息 消息正常显示
消息撤回 2分钟内撤回 状态变为 recalled
消息撤回 超过2分钟 返回 403 错误
标记已读 点击已读 所有消息标记为已读

五、已知问题与限制

5.1 待解决

问题 状态 说明
容器冲突 进行中 需指定项目名 -p root
前端同步 待确认 可能需要更新前端代码

5.2 已知限制

限制 说明
单节点部署 MVP 阶段保持单节点
文件大小 单文件 ≤10MB
撤回时间 2分钟后不可撤回

六、回滚方案

如果部署失败,执行:

# 停止服务
docker compose -p root down

# 恢复旧镜像(如果有备份)
docker load -i wecom-it-desk-backend-old.tar

# 使用备份的配置启动
docker compose -p root up -d

七、联系人

角色 联系人 说明
产品负责人 许清楚 PRD 确认
技术负责人 寇豆码 代码审查
QA 负责人 严过关 测试验证
运维负责人 宋献 部署执行

文档版本: 1.0 审核状态: 待审核