docs: 更新 CHANGELOG 添加下午的修复内容
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
yuliang_guo
2026-01-29 17:38:43 +08:00
parent 16ffdfc114
commit 3ddb1bda2d

View File

@@ -180,9 +180,82 @@ pip install Pillow qrcode
---
## 五、错误提示优化(下午更新)
### 课程名重复错误优化
**问题**:创建课程时名称重复返回 409 错误,前端提示不明确
**修复内容**
1. **后端** `course_service.py`:课程名重复时返回 `existing_id``existing_name`
2. **前端** `edit-course.vue`:检测 409 错误后弹出确认框
- "查看已有课程" → 跳转到已存在的课程
- "修改名称" → 留在当前页面
### 通用错误处理增强
- `errorHandler.ts` 新增 409 冲突错误处理
- 新增工具函数:`isConflictError()`, `getConflictDetail()`, `getConflictMessage()`
### 其他页面错误提示优化
- `position-management.vue`:岗位创建/编辑错误提取详细信息
- `user-management.vue`:用户编辑错误提取详细信息
### 文件变更
- `backend/app/services/course_service.py` (修改)
- `frontend/src/utils/errorHandler.ts` (修改)
- `frontend/src/views/manager/edit-course.vue` (修改)
- `frontend/src/views/admin/position-management.vue` (修改)
- `frontend/src/views/admin/user-management.vue` (修改)
---
## 六、部署问题修复(下午更新)
### 后端导入路径修复
1. `certificate.py` 模型:`from app.core.database import Base``from app.models.base import Base`
2. `certificate.py` API`from app.core.database import get_db``from app.core.deps import get_db`
3. `dashboard.py` API同上
4. 合并 `get_current_user` 导入到 `app.core.deps`
### 依赖安装
```bash
docker exec kpl-backend-dev pip install Pillow qrcode
```
### 前端构建同步问题
- 问题:构建输出到 `/root/aiedu/frontend/dist/`,但容器挂载的是 `/root/aiedu/dist-test/`
- 解决:构建后需手动同步 `cp -r /root/aiedu/frontend/dist/* /root/aiedu/dist-test/`
---
## 七、钉钉免密登录问题修复(下午更新)
### 问题现象
- 钉钉环境打开应用后显示"没有访问此页面的权限"
- 后端日志显示登录实际成功
### 问题原因
登录成功后读取 URL 中的 `redirect` 参数跳转,但该参数指向用户无权限的页面(如 /admin/*
### 修复内容
`login/index.vue`:登录成功后检查 redirect 目标是否有权限
```javascript
// 检查 redirect 目标是否有权限访问
if ((redirect.startsWith('/admin') && userRole !== 'admin') ||
(redirect.startsWith('/manager') && !['admin', 'manager'].includes(userRole))) {
redirect = defaultRoute // 改为跳转到默认页面
}
```
### 调试工具
- 钉钉环境自动启用 vConsole`main.ts` 中根据 UA 判断)
- 依赖:`npm install vconsole`
---
## 待办事项
- [ ] 证书 PDF 生成(需安装 weasyprint
- [ ] 课程完成进度追踪user_course_progress 表)
- [ ] 数据大屏数据缓存优化
- [ ] 钉钉环境下底部导航适配
- [ ] 移除 vConsole 调试代码(问题确认解决后)