feat(dashboard): 添加特码热力图功能

在控制台增加特码热力图可视化功能:
- 新增 getSpecialHeatmap() 方法生成热力图数据
- 热力图展示近N期特码号码分布(X轴期号,Y轴号码1-49)
- 使用号码波色作为单元格颜色,直观展示开奖规律
This commit is contained in:
2026-04-22 22:41:02 +08:00
parent 54dd2fe5ad
commit f4c67bd102
6 changed files with 245 additions and 3 deletions
@@ -0,0 +1,48 @@
---
quick_id: 260422-vep
description: 在控制台增加特码热力图功能
mode: quick
date: 2026-04-22
---
# Quick Task Plan: 特码热力图功能
## Goal
在控制台(Dashboard)增加特码热力图功能,直观展示特码号码在近 N 期内的出现分布情况。
## Implementation Design
### 热力图数据结构
- X轴:期号(最近30期)
- Y轴:号码 1-49
- 颜色:基于号码的波色(红/蓝/绿),出现时显示颜色,未出现时显示浅灰
### Files to Modify
1. `application/admin/model/History.php` - 添加 `getSpecialHeatmap()` 方法
2. `application/admin/controller/History.php` - 添加 `specialHeatmap` API 接口和权限声明
3. `public/assets/js/backend/dashboard.js` - 添加热力图渲染逻辑
4. `application/admin/view/dashboard/index.html` - 无需修改(热力图容器由 JS 动态生成)
## Tasks
### Task 1: 后端数据模型
**File:** `application/admin/model/History.php`
**Action:** 添加 `getSpecialHeatmap()` 方法
**Verify:** 方法返回热力图数据(expects, heatmap_data, colorMap
**Done:** 方法可被正确调用并返回结构化数据
### Task 2: API 接口
**File:** `application/admin/controller/History.php`
**Action:**
1.`$noNeedRight` 数组添加 `specialHeatmap`
2. 添加 `specialHeatmap()` 方法
**Verify:** API 可通过 AJAX 访问并返回正确数据
**Done:** 接口可被前端调用
### Task 3: 前端渲染
**File:** `public/assets/js/backend/dashboard.js`
**Action:**
1. 在 AJAX 请求中添加热力图数据获取
2. 在 render 函数中添加热力图 HTML 和 ECharts 渲染
**Verify:** 热力图正确显示在 Dashboard 页面
**Done:** 热力图可视化完成