feat(dashboard): 添加特码热力图功能
在控制台增加特码热力图可视化功能: - 新增 getSpecialHeatmap() 方法生成热力图数据 - 热力图展示近N期特码号码分布(X轴期号,Y轴号码1-49) - 使用号码波色作为单元格颜色,直观展示开奖规律
This commit is contained in:
+7
-1
@@ -28,7 +28,7 @@ See: .planning/PROJECT.md (updated 2026-04-21)
|
||||
Phase: 01 (omitted-number-analysis) — COMPLETE
|
||||
Plan: 3 of 3
|
||||
Status: Phase 1 complete, ready to plan next phase
|
||||
Last activity: 2026-04-21 -- Phase 01 complete, Phases 2-10 added
|
||||
Last activity: 2026-04-22 -- Completed quick task 260422-vep: 特码热力图功能
|
||||
|
||||
Progress: [████░░░░░░] 10%
|
||||
|
||||
@@ -69,6 +69,12 @@ None yet.
|
||||
|
||||
None yet.
|
||||
|
||||
### Quick Tasks Completed
|
||||
|
||||
| # | Description | Date | Commit | Directory |
|
||||
|---|-------------|------|--------|-----------|
|
||||
| 260422-vep | 在控制台增加特码热力图功能 | 2026-04-22 | 73e7403 | [260422-vep](./quick/260422-vep/) |
|
||||
|
||||
## Deferred Items
|
||||
|
||||
| Category | Item | Status | Deferred At |
|
||||
|
||||
@@ -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:** 热力图可视化完成
|
||||
@@ -0,0 +1,34 @@
|
||||
# Quick Task 260422-vep: 特码热力图功能 - Summary
|
||||
|
||||
**Status:** Completed
|
||||
**Date:** 2026-04-22
|
||||
|
||||
## Implementation Summary
|
||||
|
||||
在控制台(Dashboard)增加了特码热力图功能,直观展示特码号码在近 N 期内的出现分布情况。
|
||||
|
||||
### Changes Made
|
||||
|
||||
**1. Backend Model (`application/admin/model/History.php`)**
|
||||
- 新增 `getSpecialHeatmap($periods)` 方法
|
||||
- 返回热力图数据结构:expects(期号列表)、heatmap(出现数据)、colors(号码波色)、nums(号码列表)
|
||||
|
||||
**2. Backend Controller (`application/admin/controller/History.php`)**
|
||||
- 在 `$noNeedRight` 数组添加 `specialHeatmap` 权限声明
|
||||
- 新增 `specialHeatmap()` API 接口方法
|
||||
- `getDashboardData()` 方法已自动包含热力图数据
|
||||
|
||||
**3. Frontend JS (`public/assets/js/backend/dashboard.js`)**
|
||||
- 在 `render()` 函数中添加热力图 HTML 部分
|
||||
- 新增 ECharts 热力图渲染逻辑,使用号码波色作为单元格颜色
|
||||
|
||||
### Features
|
||||
- X轴:期号(从左往右,从远到近)
|
||||
- Y轴:号码 1-49
|
||||
- 颜色:号码对应波色(红/蓝/绿),未开出显示浅灰
|
||||
- Tooltip:显示期号、号码、状态
|
||||
|
||||
### Files Modified
|
||||
1. `application/admin/model/History.php` - 添加热力图数据方法
|
||||
2. `application/admin/controller/History.php` - 添加 API 接口
|
||||
3. `public/assets/js/backend/dashboard.js` - 添加前端渲染逻辑
|
||||
Reference in New Issue
Block a user