Commit Graph

3 Commits

Author SHA1 Message Date
En
f03991819d feat: 管理端全功能 E2E 测试——40 用例覆盖登录、仪表盘、活动、报名、作品、评审、用户、导航
新增 10 个管理端 E2E 测试文件和 1 个 Mock fixture:
- admin.fixture.ts: Mock 数据 + 登录注入 + 组件预热 + 兜底 API 拦截
- login/contests/dashboard/navigation/registrations/works/reviews/users 等 9 个 spec

关键修复:route.fallback() 替代 route.continue() 修正 Mock 链式传递;
review-rules/select Mock + 兜底拦截器防止未 mock 请求到达真实后端。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 12:52:39 +08:00
En
b9ed5e17c6 feat: OSS 客户端直传改造(STS Token 签发 + 前端直传 + CORS 自动配置)
后端新增 OssUtils/OssTokenVo/OssCorsInitRunner,通过 STS 临时凭证实现客户端直传 OSS;
前端 upload API 适配直传流程,赛事创建/作品提交/作业/富文本编辑器均已切换;
多环境(dev/test/prod) OSS 配置补全;新增 oss-direct-upload-demo 示例项目及 E2E 测试。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 15:19:43 +08:00
aid
096d06af3d Java 后端完整转写:NestJS/Prisma → Spring Boot/MyBatis-Plus
## 技术栈
- Spring Boot 3.2 + Java 17 + MyBatis-Plus 3.5
- Spring Security + JWT 认证(与 NestJS 兼容)
- MapStruct + Knife4j + Druid + Hutool + FastJSON2
- 腾讯云 COS 文件上传

## 项目规模
- 239 个 Java 文件,246 个文件总计
- 39 个实体类映射到现有数据库
- ~256 个 API 端点,与 NestJS 完全兼容

## 模块清单
- Phase 0: 脚手架 + 基础框架(BaseEntity, Result, JWT, Security, AOP权限)
- Phase 1: 认证/用户/角色/权限/租户(~35 接口)
- Phase 2: 菜单/字典/配置/日志(~25 接口)
- Phase 3: 赛事核心 — 赛事/报名/作品/团队/附件/公告(~46 接口)
- Phase 4: 评审/计分/成果 — 评审规则/评委/分配/评分/排名/奖项/发布(~52 接口)
- Phase 5: 作业 — 作业/提交/评分/评审规则(~20 接口)
- Phase 6: 公众端 — 注册/登录/画廊/活动/作品库/子女/互动/内容审核(~55 接口)
- Phase 7: UGC — 作品/绘本页/标签/点赞/收藏/评论/举报/审核日志(~15 接口)
- Phase 8: 文件上传/OSS(1 接口)

## 验证结果
- mvn compile 零错误,1.8秒启动
- 62 个 API 端点手动测试通过(GET + POST/PATCH/DELETE)
- 20 个前端页面 Playwright 自动化测试通过,69+ API 调用零错误
- 核心业务全流程验证:登录→赛事→报名→作品→评审→计分→排名→奖项→发布

## 数据库适配
- 使用现有表名(Flyway 暂禁用,待正式切换时启用)
- Flyway V1/V2 迁移脚本已准备(表重命名+新审计字段)
- 修复:configs/t_contest_registration 添加 valid_state 列
- 修复:所有表 modify_time 添加 DEFAULT CURRENT_TIMESTAMP

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 14:05:41 +08:00