Files
ssq-desk/docs/任务规划.md
2026-01-14 14:17:38 +08:00

274 lines
7.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 任务规划
## 1. Phase 1核心查询功能
### 1.1 数据库基础建设
#### 101 数据库连接模块
- **任务描述**:实现 MySQL 和 SQLite 数据库连接管理
- **技术要点**
- MySQL 连接池管理(远程数据库)
- SQLite 本地数据库初始化
- 连接配置管理
- **依赖**:无
- **优先级**P0
#### 102 数据模型定义
- **任务描述**:定义 `ssq_history` 数据模型结构
- **技术要点**
- Go 结构体定义(对应数据库表)
- 字段验证规则
- 模型方法(查询、插入等)
- **依赖**101
- **优先级**P0
#### 103 Repository 层实现
- **任务描述**实现数据访问层MySQL 和 SQLite
- **技术要点**
- MySQL Repository远程数据查询
- SQLite Repository本地数据查询和写入
- 统一接口抽象
- **依赖**102
- **优先级**P0
### 1.2 查询服务层
#### 104 查询服务实现
- **任务描述**:实现核心查询业务逻辑
- **技术要点**
- 红球匹配算法(支持部分匹配)
- 蓝球筛选逻辑
- 匹配结果分类统计0-6个红球 + 蓝球组合)
- **依赖**103
- **优先级**P0
#### 105 查询结果处理
- **任务描述**:处理查询结果,生成分类统计和详细列表
- **技术要点**
- 匹配度计算
- 结果分类13种匹配类型
- 数据格式化
- **依赖**104
- **优先级**P0
### 1.3 Wails API 层
#### 106 API 接口定义
- **任务描述**:定义 Wails 绑定方法,供前端调用
- **技术要点**
- 查询接口:`QueryHistory(params)`
- 参数结构体封装(红球、蓝球、筛选条件)
- 返回结果结构体
- **依赖**105
- **优先级**P0
#### 107 API 实现
- **任务描述**:实现 API 方法,调用 Service 层
- **技术要点**
- 参数验证
- 错误处理
- 结果返回
- **依赖**106
- **优先级**P0
### 1.4 前端查询界面
#### 108 查询条件组件
- **任务描述**:实现查询条件输入界面
- **技术要点**
- 6个红球输入框数字输入范围1-33
- 1个蓝球输入框数字输入范围1-16
- 16个蓝球筛选复选框 + 全选功能
- 查询按钮、重置按钮
- **依赖**:无
- **优先级**P0
#### 109 查询结果展示组件
- **任务描述**:实现查询结果展示界面
- **技术要点**
- 左侧汇总列表13种匹配类型统计
- 右侧详情列表(期号、红球、蓝球)
- 数字颜色标识(匹配红球红色、匹配蓝球蓝色、未匹配黑色)
- **依赖**108
- **优先级**P0
#### 110 交互功能实现
- **任务描述**:实现查询交互逻辑
- **技术要点**
- 点击汇总项显示详细记录
- 扩展查询功能前后n期
- 扩展显示低匹配度结果≤3个红球
- **依赖**109, 107
- **优先级**P0
#### 111 前端与后端集成
- **任务描述**:前端调用 Wails API完成查询流程
- **技术要点**
- Wails 绑定方法调用
- 数据传递和格式化
- 错误处理和提示
- **依赖**110
- **优先级**P0
---
## 2. Phase 2数据管理
### 2.1 数据同步功能
#### 201 数据同步服务
- **任务描述**:实现 MySQL 到 SQLite 的数据同步逻辑
- **技术要点**
- 增量同步(基于 `issue_number`
- 数据校验和去重
- 同步状态记录
- **依赖**103
- **优先级**P1
#### 202 同步触发机制
- **任务描述**:实现同步触发方式
- **技术要点**
- 应用启动时自动同步
- 手动触发同步
- 定时同步(可选)
- **依赖**201
- **优先级**P1
#### 203 同步状态展示
- **任务描述**:前端展示同步状态和进度
- **技术要点**
- 同步进度条
- 同步日志显示
- 同步结果提示
- **依赖**202
- **优先级**P1
### 2.2 本地数据管理
#### 204 数据统计功能
- **任务描述**:展示本地数据统计信息
- **技术要点**
- 数据总量统计
- 最新期号显示
- 数据更新时间
- **依赖**103
- **优先级**P1
#### 205 数据刷新功能
- **任务描述**:手动刷新本地数据
- **技术要点**
- 刷新按钮
- 刷新进度提示
- 刷新结果反馈
- **依赖**202
- **优先级**P1
#### 206 数据备份与恢复
- **任务描述**:实现数据备份和恢复功能
- **技术要点**
- 导出 SQLite 数据包
- 导入数据包
- 备份文件管理
- **依赖**103
- **优先级**P2
---
## 3. Phase 3其他功能
### 3.1 版本更新
#### 301 更新检查功能
- **任务描述**:实现版本更新检查
- **技术要点**
- 版本号管理(语义化版本格式)
- 远程版本检查接口JSON 格式)
- 版本号比较逻辑
- 更新提示界面
- 检查触发机制(启动检查、手动检查)
- **依赖**:无
- **优先级**P2
- **参考文档**`docs/04-功能迭代/版本更新/任务规划.md`
#### 302 更新下载和安装
- **任务描述**:实现更新包下载和安装
- **技术要点**
- 更新包下载(支持断点续传)
- 下载进度展示
- 文件校验MD5/SHA256
- 自动/手动安装
- 安装前备份和失败回滚
- 更新日志展示
- **依赖**301
- **优先级**P2
- **参考文档**`docs/04-功能迭代/版本更新/任务规划.md`
### 3.2 离线数据包
#### 303 离线数据包管理
- **任务描述**:离线数据包的下载、导入、更新
- **技术要点**
- 数据包下载
- 数据包导入
- 数据包更新检查
- **依赖**206
- **优先级**P2
### 3.3 授权管理
#### 304 授权码管理
- **任务描述**:实现设备授权码管理
- **技术要点**
- 设备标识生成(基于主机名、用户目录、操作系统)
- 授权码输入和格式验证
- 授权码与设备ID绑定
- 授权状态存储SQLite 本地数据库)
- 授权信息查询接口
- **依赖**:无
- **优先级**P2
- **参考文档**`docs/04-功能迭代/授权码功能/授权码功能设计.md`
#### 305 激活验证
- **任务描述**:实现激活状态验证
- **技术要点**
- 应用启动时自动验证授权状态
- 授权信息展示
- 授权失效处理
- 设备ID查询接口
- **依赖**304
- **优先级**P2
- **参考文档**`docs/04-功能迭代/授权码功能/授权码功能设计.md`
---
## 4. 任务优先级说明
- **P0**核心功能必须完成Phase 1 所有任务
- **P1**重要功能Phase 2 主要任务
- **P2**辅助功能Phase 3 所有任务
---
## 5. 开发顺序建议
### 第一阶段(核心功能)
1. 101 → 102 → 103数据库基础
2. 104 → 105查询服务
3. 106 → 107API 层)
4. 108 → 109 → 110 → 111前端界面
### 第二阶段(数据管理)
1. 201 → 202 → 203数据同步
2. 204 → 205数据管理
3. 206数据备份可选
### 第三阶段(其他功能)
1. 301 → 302版本更新
2. 303离线数据包
3. 304 → 305授权管理
---
> 文档维护者JueChen
> 创建时间2026-01-07