Initial commit: Flutter 无书应用项目

This commit is contained in:
Developer
2026-03-30 02:35:31 +08:00
commit 9175ff9905
566 changed files with 103261 additions and 0 deletions

142
CHANGELOG.md Normal file
View File

@@ -0,0 +1,142 @@
# Changelog
All notable changes to this project will be documented in this file.
---
## [1.3.1] - 2026-03-29
### 修复
- 🐛 **服务器监控页面错误修复**
- 修复获取服务器数据失败的错误
- 添加模拟数据功能确保在无PHP服务器时也能正常显示
- 优化错误处理逻辑,提供更好的用户体验
- 文件:`server_monitor.html`
### 新增
- 📊 **服务器监控模拟数据**
- 添加 `getMockData()` 函数生成模拟服务器数据
- 模拟数据包括:服务器负载、内存使用、磁盘使用、运行时间、响应时间和网络延迟
- 当无法连接到PHP API时自动使用模拟数据
- 显示"模拟数据"状态标识
- 文件:`server_monitor.html`
## [1.3.0] - 2026-03-29
### 新增
-**离线数据下载优化**
- 添加取消下载功能,支持中断下载过程
- 下载过程中显示取消按钮,点击可立即停止
- 优化下载状态显示,避免页面卡死
- 取消下载时显示相应提示
- 文件:`lib/views/profile/settings/offline-data.dart`
### 优化
- 🌐 **网络状态自动检测**
- 个人卡片加载时自动检测网络状态
- 无网络时自动调整为离线状态
- 避免网络异常导致的错误
- 文件:`lib/views/profile/per_card.dart`
### 修复
- 🐛 **网络状态检测错误修复**
- 修复 `currentNetworkStatus` 不存在的错误
- 修复 `NetworkStatus.offline` 不存在的错误
- 使用正确的 `currentStatus``NetworkStatus.error`
- 文件:`lib/views/profile/per_card.dart`
### 新增
- 📊 **服务器信息显示**
- 在离线数据页面添加服务器信息卡片
- 显示 API 地址、版本、频率限制等信息
- 文件:`lib/views/profile/settings/offline-data.dart`
### 优化
- 📱 **离线数据下载功能增强**
- 新增下载类型选择:诗句和答题
- 诗句数量选项20、30、60、100条
- 答题数量选项20、50、80、100条
- 100条下载需要加入用户体验计划
- 实现下载一条写入一条的功能
- 取消下载时保存已下载的数据
- 实时更新缓存状态显示
- 返回上一页时继续后台下载,不中断
- 清空缓存时弹窗选择清空内容(诗句/答题/全部)
- 缓存状态同时显示诗句和答题数量
- 文件:`lib/views/profile/settings/offline-data.dart`
---
## [1.2.99] - 2026-03-29
### 新增
- 🌐 **离线模式支持**
- 新增 `OfflineDataManager` 类管理离线数据加载
- 离线状态时从本地缓存加载诗句,在线状态时从网络加载
- 支持循环加载本地缓存的诗句
- 离线模式下隐藏点赞按钮
- 无缓存时显示网络错误提示
- 优化数据加载逻辑,确保离线模式正常工作
- 文件:`lib/views/home/home-load.dart`, `lib/views/home/home_page.dart`
---
## [1.2.98] - 2026-03-29
### 新增
- 🔄 **个人卡片在线/离线状态切换**
- 在个人卡片tips卡片内添加在线状态开关
- 开关状态保存到SharedPreferences默认开启
- 关闭后切换为离线状态,个人头像右下角绿勾切换成红勾(关闭图标)
- 支持点击tips卡片切换祝福语功能
- 优化开关布局:开关位于卡片右侧,与文本平行显示
- 移除状态文字,保持界面简洁
- 状态切换时显示气泡消息提示
- 文件:`lib/views/profile/per_card.dart`
---
## [1.2.97] - 2026-03-29
### 新增
- 📱 **离线数据管理功能**
- 新增离线数据管理页面 `lib/views/profile/settings/offline-data.dart`
- 从服务器加载诗词数据到本地缓存
- 支持选择下载数量30/50/100/200条
- 显示实时下载进度条
- 数据保存在SharedPreferences中
- 缓存数据不会写入历史记录
- 提供清空缓存功能
- 优化"离线使用"按钮跳转逻辑
- 文件:`lib/views/profile/profile_page.dart`
---
## 软件特性功能
### 已开发完成
- <20> **调试信息显示功能** - 功能设置页面添加"调试信息"开关、开启后主页显示操作反馈悬浮气泡、支持显示各种操作成功/失败状态、气泡显示2秒后自动消失、开关状态保存到SharedPreferences、调试信息默认关闭
- <20><> **首页自动刷新功能** - 功能设置页面添加"自动刷新"开关、开启后首页诗句每5秒自动加载下一条、开关状态保存到SharedPreferences、自动刷新默认关闭、创建home-load.dart统一管理自动刷新逻辑
- 🗳️ **投票功能完整实现** - 用户登录/注册、获取投票列表、投票详情、提交投票、投票结果展示、API服务基础URL修改、登录注册逻辑简化只需用户名、默认密码123456、自动注册登录、设备标识、投票页面调试功能、user_identifier增加Flutter后缀、setState调用安全修复添加mounted检查、投票登录状态持久化修复添加Cookie管理器支持PHP Session认证
- 🎨 **个人卡片标签栏布局优化** - 将标签栏区域一分为二,左侧区域可以点击展开/收起个人卡片
- 🎲 **题目随机化功能** - 进入答题页面时调用 fetch 接口获取新题,使用 Fisher-Yates 算法打乱题目 ID 顺序
- 💬 **答对答错反馈信息修复** - 当 API 返回的提示信息为空时,自行添加提示内容
- 📚 **App 自行管理题目 ID** - 实现题目 ID 管理逻辑,不再随机生成
- 🔧 **API 接口路径和参数最终修复** - 确认 API 路径,调整随机题目 ID 范围
- 🔧 **API 接口路径和参数修复** - 修复 API 路径和参数,使用正确的新 API 接口
- 🐛 **HttpResponse 处理修复** - 修复 HttpResponse 对象处理方式,使用正确的属性访问
- 🔧 **API 请求参数更新** - 根据新的 API 文档更新所有请求参数
- 📊 **个人页面统计数字动态化** - 从SharedPreferences读取真实的答题统计数据
- 📝 **记录页显示问题修复** - 修复答题记录页面显示未知题目和标签的问题
- 📋 **答题统计弹窗功能** - 显示详细的答题统计数据支持复制发送给AI评估
- 📝 **诗词答题功能** - 完整的答题页面,支持题目加载、答案提交、提示获取
- 🕐 **中国十二时辰制时间显示** - 时间显示改为十二时辰(子丑寅卯辰巳午未申酉戌亥)
- 🌤️ **天气功能集成** - 集成天气API获取城市、天气状态和温度
- 📚 **朝代信息显示** - 在诗人名称左侧添加朝代信息显示
- 🎨 **卡片样式优化** - 经典和现代样式颜色统一,毛玻璃样式优化
- 🐛 **卡片设置页面重复打开问题修复** - 使用 router.replaceUrl 替换当前页面,避免堆叠
- 📐 **2x2卡片布局优化** - 移除天气按钮组件,保留城市名称显示
### 开发进度
- 🏗️ **HarmonyOS桌面小组件** - 开发中包含2x2布局、天气显示、诗句展示等功能
- 优先级3