v1.3.4-stable
🎯 Hit 值系统完整收官
经过 v1.3.2(邮箱验证 + 紫色管理员)→ v1.3.3(引擎 + 卡片)→ v1.3.4(颜色档全店生效 + 趋势图 + 双 Tab 排名)三个版本的迭代,Hit 值生态系统现已完整上线。
✨ 本次新功能
🎨 全店用户名颜色档
- 用户名按 Hit 值显示 5 档颜色:灰(萌新)/ 蓝(业余)/ 绿(进阶)/ 橙(高手)/ 红(大神)
- 站点管理者紫色(覆盖一切)
- 全站统一渲染,包括 SYZOJ 自带页面(讨论、排名、文章、提交记录等)
- Vue 动态组件(提交列表 / 提交详情)也接入了同套颜色
📈 Hit 值趋势折线图
- 用户主页 Hit 卡片下方新增「Hit 值趋势(近 30 天)」卡片
- 4 条彩色折线对应 4 个分数维度
- 历史数据不足时优雅降级为 placeholder
📊 排名页双 Tab
/ranklist顶部新增 Tab 切换:Rating 排名 / Hit 值排名- Hit 值排名表中末列显示带颜色的 Hit 数字
🛠 内部改动
- 新增路由
GET /api/hit-history/:uid提供历史数据 - 新增模块
_ranklist.js在 SYZOJ 自带 ranklist 路由前抢先注册 - header.ejs 注入全局变量
window.__SYZOJ_USER_TIERS供 Vue 组件使用 - 拷贝并改造 SYZOJ 自带
submissions_item.ejs,加入userTierClasscomputed
🔧 修复 / 清理
- 清理用户名 helper 中遗留的
enhanceUsers/enhanceUser调用(已被全局缓存方案取代) - 同步更新 README,包含完整的功能清单与 SQL 初始化脚本