feat: 初始化考培练系统项目

- 从服务器拉取完整代码
- 按框架规范整理项目结构
- 配置 Drone CI 测试环境部署
- 包含后端(FastAPI)、前端(Vue3)、管理端

技术栈: Vue3 + TypeScript + FastAPI + MySQL
This commit is contained in:
111
2026-01-24 19:33:28 +08:00
commit 998211c483
1197 changed files with 228429 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
# 播课功能
## 功能概述
管理员在课程编辑页点击"生成播课"按钮,触发 Coze 工作流生成综合播课音频。学员可在课程中心点击"播课"按钮播放。
## 核心策略
**触发即可Coze工作流直接写数据库**
- 后端API只负责触发Coze工作流立即返回
- Coze工作流生成音频后直接执行SQL更新数据库
- 前端刷新页面即可看到最新结果,无需轮询
## 架构设计
1. **管理员触发**:课程编辑页点击"生成播课"
2. **后端触发**:调用 Coze API立即返回
3. **Coze工作流**:生成音频 + 直接写数据库
4. **用户查看**:刷新页面查看结果
## 技术要点
- 使用 `asyncio.to_thread()` 避免同步SDK阻塞
- Coze工作流配置MySQL连接端口3307
- 数据库只需2个字段`broadcast_audio_url``broadcast_generated_at`
- 极简架构:无需后台任务、状态轮询、状态字段
## 文档说明
- **Coze工作流运行API文档.md** - Coze API调用规范
- **播课功能API接口规范.md** - 后端API接口定义
- **播课功能技术方案.md** - 技术架构和实现细节
- **播课功能验收清单.md** - 功能验收标准
## 数据库配置
Coze工作流连接生产环境数据库
```
主机120.79.247.16 或 aiedu.ireborn.com.cn
端口3307容器映射端口
数据库kaopeilian
用户root
密码nj861021
```
SQL更新语句
```sql
UPDATE courses
SET
broadcast_audio_url = '{mp3_url}',
broadcast_generated_at = NOW(),
updated_at = NOW()
WHERE id = {course_id}
```
## 验证状态
✅ 已完成端到端联调
✅ Coze工作流成功写入远程数据库
✅ 无linter错误
✅ 生产环境验证通过
---
**实施日期**: 2025-10-14
**最后更新**: 2025-10-14