Commit Graph

12 Commits

Author SHA1 Message Date
richarjiang
fe2c13258e refactor: 拆分核心玩法模块并优化代码质量
将 WechatGame 单体模块拆分为独立的 User、Level、GameConfig 模块,
新增体力值系统、关卡闯关流程,并修复多项代码质量问题:
- 体力不足错误码从 401 修正为 400
- enterLevel 改用 findById 替代全表扫描
- consumeStamina 增加原子更新防止并发竞态
- 并行化独立数据库查询 (Promise.all)
- 移除 WechatGameService/Controller 死代码
2026-04-10 09:07:50 +08:00
richarjiang
c775d5c6b0 perf: 优化代码 2026-04-08 16:12:18 +08:00
richarjiang
df05b7280c feat: 支持单元测试 2026-04-08 16:02:19 +08:00
richarjiang
2d0fee8a9a feat(share): 更新分享关卡进度逻辑,优化时间限制检查 2026-04-08 15:11:52 +08:00
richarjiang
3d52cfe843 feat(share): 分享挑战关卡进度记录功能
- 新增 Level.timeLimit 字段支持关卡时间限制
- 新增 ShareLevelProgress 实体记录单关通关进度
- 新增 ShareLevelProgressRepository
- 新增 DTO: ReportLevelProgressDto, ReportLevelProgressResponseDto
- 新增 POST /v1/share/progress 接口用于上报进度
- 支持仅首次通关有效判断
- 支持时间限制内通关判断
- 不可变模式更新进度记录
- 数据库迁移脚本

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 11:46:54 +08:00
richarjiang
2dd22b10b1 feat: 添加通关时间记录功能
客户端上报通关时间(秒),存储到 wx_user_level_progress 表

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-07 15:47:23 +08:00
richarjiang
886e70a106 perf: 优化类型问题 2026-04-07 15:35:44 +08:00
richarjiang
3a1b4d22bf feat: 支持关卡配置分享 2026-04-06 17:32:20 +08:00
richarjiang
9ab78555cb feat: 支持登录、个人信息存储 2026-04-05 13:38:12 +08:00
richarjiang
46368b8c89 feat(wechat-game): add level list API endpoints
Add CRUD endpoints for game levels with level field in response:
- GET /v1/wechat-game/levels - list all levels ordered by sort_order
- GET /v1/wechat-game/levels/:id - get single level by ID

New files:
- Level entity mapping to levels table
- LevelRepository with ordered query support
- LevelResponseDto with level field (1-based index from sort_order)
2026-03-15 15:52:51 +08:00
richarjiang
ed1b5455a2 chore: add deployment configuration for PM2 and production environment
- Add deploy.sh script for automated deployment via rsync
- Add ecosystem.config.js for PM2 process management (2 instances)
- Add .env.production.example as production env template
- Update config.module.ts to support .env.production file
- Add 'pnpm run deploy' script to package.json
2026-03-15 14:27:48 +08:00
richarjiang
6413d4f34c init 2026-03-15 11:35:39 +08:00