cursor-init/tasks/archive/20250627-tasks-prd-项目初始化.md
expressgy 2ee70e5d42 feat: 完成健康检查接口和Swagger文档完善
 健康检查功能:
- 实现完整的健康检查接口(/api/health, /api/health/detailed)
- 支持MySQL和Redis依赖状态检查
- 包含系统信息、性能指标监控
- 修复this上下文问题,确保服务方法正常调用
- 添加全面的健康检查测试用例

📝 Swagger文档优化:
- 创建全局响应Schema定义和错误码说明
- 完善API文档,包含详细的错误码表格
- 添加JWT认证说明和响应格式示例
- 增加全局组件、响应模板和示例
- 创建Swagger文档功能测试

🎯 任务完成:
-  5.0 健康检查接口 - 实现系统和依赖健康状态监控
-  7.0 Swagger文档完善 - 增加全局响应示例和错误码说明

📁 新增文件:
- src/controllers/health.controller.ts - 健康检查控制器
- src/services/health.service.ts - 健康检查服务层
- src/type/health.type.ts - 健康检查类型定义
- src/validators/health.response.ts - 健康检查响应验证
- src/validators/global.response.ts - 全局响应Schema定义
- src/tests/health.test.ts - 健康检查功能测试
- src/tests/redis.test.ts - Redis连接测试
- src/tests/swagger.test.ts - Swagger文档功能测试
2025-06-28 22:09:02 +08:00

3.1 KiB
Raw Blame History

相关文件 (Relevant Files)

  • src/app.ts - 应用主入口负责Elysia实例初始化和全局插件注册。
  • src/controllers/ - 路由与业务入口目录。
  • src/services/ - 业务逻辑实现目录。
  • src/models/ - 数据模型与类型定义目录。
  • src/middlewares/ - 中间件实现目录。
  • src/plugins/ - Elysia插件扩展目录。
  • src/utils/ - 工具函数目录。
  • src/validators/ - 参数校验规则目录。
  • src/config/ - 配置文件目录。
  • src/type/ - 类型定义文件目录。
  • tests/ - 测试用例目录。
  • public/ - 静态资源目录。
  • .env - 环境变量配置文件。
  • bun.lockb - Bun依赖锁定文件。
  • package.json - 项目依赖与脚本配置。
  • README.md - 项目说明文档。
  • .git/ - Git版本控制目录跟踪项目历史和协作。
  • .gitignore - Git忽略文件排除不需纳入版本控制的内容。
  • tsconfig.json - TypeScript配置文件。

备注 (Notes)

  • 单元测试通常应放置在与它们测试的代码文件相同的目录中(例如:在同一目录下的 MyService.tsMyService.test.ts)。

任务 (Tasks)

  • 1.0 初始化Bun.js + Elysia + TypeScript项目结构

    • 1.1 初始化git仓库配置.gitignore
    • 1.2 使用Bun初始化项目创建package.jsonbun.lockb
    • 1.3 配置TypeScript支持生成tsconfig.json
    • 1.4 按照规范创建src/及各子目录controllers、services、models等
    • 1.5 创建src/app.ts作为应用入口初始化Elysia实例
    • 1.6 创建.envREADME.md基础文件
    • 1.7 在所有源文件添加文件头注释模板
  • 2.0 集成MySQL数据库支持

    • 2.1 选择并安装MySQL驱动bun-mysqlmysql2
    • 2.2 在src/config/中编写数据库配置文件,支持环境变量
    • 2.3 在src/models/中定义基础数据模型
    • 2.4 编写数据库连接工具或服务,支持连接池
    • 2.5 实现数据库连接测试脚本
  • 3.0 集成JWT认证与基础登录接口

    • 3.1 安装@elysiajs/jwt插件
    • 3.2 在src/plugins/中封装JWT插件配置
    • 3.3 在src/controllers/中实现基础登录接口(如/api/login
    • 3.4 在src/middlewares/中实现JWT校验中间件
    • 3.5 提供一个带JWT保护的示例接口
    • 3.6 集成控制器并测试主应用
  • 4.0 集成Swagger API文档自动生成

    • 4.1 安装@elysiajs/swagger插件
    • 4.2 在src/plugins/中封装Swagger插件配置
    • 4.3 为所有接口补充Swagger注解完善参数/返回/错误码描述
    • 4.4 验证Swagger UI可正常访问并展示所有接口
  • 5.0 配置Vitest测试、ESLint、Prettier及CI/CD工具链

    • 5.1 安装并配置Vitest编写基础单元测试和接口测试
    • 5.2 安装并配置ESLint含TypeScript规则
    • 5.3 安装并配置Prettier统一代码风格
    • 5.4 配置Git钩子或CI自动检查代码规范
    • 5.5 编写GitHub Actions等CI/CD示例配置