新增 AnalysisController 提供 6 个分析接口: - /admin/analysis/profit - 盈利分析(交易手续费/充提手续费/资金利差) - /admin/analysis/cash-flow - 资金流动趋势(按月统计充值/提现/净流入) - /admin/analysis/trade - 交易分析(买入/卖出统计+趋势) - /admin/analysis/coin-distribution - 币种交易分布 - /admin/analysis/user-growth - 用户增长分析(新增/活跃用户) - /admin/analysis/risk - 风险指标(大额交易/异常提现/KYC/冻结账户) - /admin/analysis/health - 综合健康度评分 更新 Mapper 添加分析查询方法: - OrderFundMapper: 手续费统计、时间范围查询、大额交易、异常提现 - OrderTradeMapper: 交易金额统计、活跃用户、币种分布 前端 API 对接: - 新增 6 个分析相关 Query hooks - 更新 analytics.vue 使用真实数据 - 动态决策建议基于实际数据
6.6 KiB
6.6 KiB
目标
使用 shadcn_ui 现代化 Flutter 虚拟货币交易平台的主题和 UI,统一设计系统,提升用户体验。
参考文件
specs/theme-modernization.md- 主题现代化规范AGENTS.md- 项目说明和注意事项../REFACTOR_PLAN.md- 已有的重构计划IMPLEMENTATION_PLAN.md- 实施计划(待创建)
任务范围
Phase 1: 分析和学习 (Analysis & Learning)
- 读取并理解
../REFACTOR_PLAN.md- 已有的重构计划 - 分析现有页面:
- 哪些页面已经用 shadcn 重构
- 哪些页面还在使用 Material 组件
- 哪些地方有硬编码的颜色/样式
- 识别主题配置:
- 当前的 ShadTheme 配置
- 品牌色、涨跌色、中性色
- 深色/浅色模式支持
- 列出需要创建的自定义组件
Phase 2: 核心页面替换 (Core Pages Replacement)
高优先级 - 立即执行
-
主页面替换
- 文件:
lib/ui/pages/main/main_page.dart - 替换为:
lib/ui/pages/main/main_page_shadcn.dart - 操作: 删除原文件,重命名 shadcn 版本
- 文件:
-
登录页替换
- 文件:
lib/ui/pages/auth/login_page.dart - 替换为:
lib/ui/pages/auth/login_page_shadcn.dart - 操作: 删除原文件,重命名 shadcn 版本
- 文件:
-
首页重构
- 文件:
lib/ui/pages/home/home_page.dart - 目标:
- 使用 ShadCard 展示资产概览
- 使用 ShadButton 进行快捷操作
- 使用 LucideIcons 替换 Material Icons
- 添加 flutter_animate 动画
- 文件:
Phase 3: 功能页面重构 (Feature Pages Refactoring)
高优先级
-
行情页面 (market_page.dart)
- 币种列表使用 ShadCard
- 价格变化使用 ShadBadge(涨绿跌红)
- 搜索框使用 ShadInput
- 列表项使用 ShadListTile
-
交易页面 (trade_page.dart)
- 买入按钮:绿色 ShadButton
- 卖出按钮:红色 ShadButton.destructive
- 数量输入:ShadInputFormField
- 币种选择:ShadSelect(如果需要)
-
资产页面 (asset_page.dart)
- 总资产卡片:大号 ShadCard
- 充值/提现按钮:ShadButton
- 资金列表:ShadListTile
-
个人中心 (mine_page.dart)
- 菜单项:统一布局
- 设置项:ShadSwitch
- 退出登录:ShadButton.destructive
Phase 4: 自定义组件创建 (Custom Components)
中优先级
创建可复用的业务组件:
-
CoinCard - 币种卡片
// lib/ui/components/coin_card.dart // 显示:币种图标、名称、代码、价格、24h变化 // 使用:ShadCard + ShadAvatar + ShadBadge -
TradeButton - 交易按钮
// lib/ui/components/trade_button.dart // 买入:绿色 ShadButton // 卖出:红色 ShadButton.destructive -
AssetCard - 资产卡片
// lib/ui/components/asset_card.dart // 显示:标题、余额、变化 // 使用:ShadCard + 大号文本 -
PriceChart - 价格图表(可选)
// lib/ui/components/price_chart.dart // 显示:价格趋势 // 使用:CustomPaint + flutter_animate
Phase 5: 注册页面重构 (Register Page)
中优先级
- 文件:
lib/ui/pages/auth/register_page.dart - 创建完整的注册表单
- 使用 ShadForm + ShadInputFormField
- 添加表单验证
Phase 6: 动画优化 (Animation Enhancement)
低优先级
使用 flutter_animate 添加动画:
-
页面切换动画
- 淡入淡出效果
- 滑动效果
-
列表加载动画
- 交错淡入
- 滑动进入
-
交互反馈动画
- 按钮点击缩放
- 卡片悬停效果
Phase 7: 主题定制 (Theme Customization)
可选
-
品牌色定制
// 在 main.dart 中 const brandGreen = Color(0xFF00D4AA); const upColor = Color(0xFF10B981); const downColor = Color(0xFFEF4444); -
配色方案调整
- 可选:Zinc, Blue, Violet 等
Phase 8: 验证和测试 (Validation & Testing)
-
功能验证
- 运行应用,测试所有功能
- 确保无运行时错误
-
视觉验证
- 检查所有页面一致性
- 检查深色模式效果
- 检查动画流畅度
-
代码验证
- 运行
flutter analyze - 确保无警告和错误
- 运行
优先级
P0 - 立即执行
- 替换 main_page.dart
- 替换 login_page.dart
- 重构 home_page.dart
P1 - 高优先级
- 重构 market_page.dart
- 重构 trade_page.dart
- 重构 asset_page.dart
- 重构 mine_page.dart
P2 - 中优先级
- 创建自定义组件
- 重构 register_page.dart
P3 - 低优先级
- 动画优化
- 主题定制
- 性能优化
完成标准
- 所有核心页面已重构为 shadcn 组件
- 所有按钮使用 ShadButton
- 所有卡片使用 ShadCard
- 所有输入框使用 ShadInputFormField
- 所有图标使用 LucideIcons
- 统一的间距和颜色
- 流畅的动画效果
- 功能验证通过
flutter analyze无错误- 应用可正常运行
注意事项
- ⚠️ 不要修改业务逻辑
- ⚠️ 不要修改 API 调用
- ⚠️ 不要修改 Provider 逻辑
- ⚠️ 不要删除现有功能
- ⚠️ 每次修改后测试功能
- ⚠️ 保持代码整洁
工作流程
- 先读取理解:阅读现有代码和重构计划
- 优先替换:先完成已有 shadcn 版本的替换
- 逐个重构:按优先级重构每个页面
- 创建组件:提取可复用的自定义组件
- 持续验证:每完成一个页面就测试
- 更新文档:完成后更新 IMPLEMENTATION_PLAN.md
输出格式
创建 IMPLEMENTATION_PLAN.md:
# Monisuo 主题现代化实施计划
## Status
STATUS: BUILDING
## Progress
### Phase 1: Analysis ✅
- [分析结果]
### Phase 2: Core Pages
- [ ] main_page.dart 替换
- [ ] login_page.dart 替换
- [ ] home_page.dart 重构
### Phase 3: Feature Pages
- [ ] market_page.dart 重构
- [ ] trade_page.dart 重构
- [ ] asset_page.dart 重构
- [ ] mine_page.dart 重构
### Phase 4: Custom Components
- [ ] CoinCard 创建
- [ ] TradeButton 创建
- [ ] AssetCard 创建
## Changes Made
[详细记录每个文件的修改]
## Issues Found
[发现的问题]
## Questions
[需要确认的问题]
## Completion
When all tasks are done, update status to:
STATUS: COMPLETE
开始指令
开始工作:
- 读取
../REFACTOR_PLAN.md了解已有计划 - 读取
specs/theme-modernization.md了解规范 - 读取
AGENTS.md了解项目结构 - 创建
IMPLEMENTATION_PLAN.md - 开始执行 P0 优先级任务
Let's modernize the Monisuo Flutter app with a beautiful shadcn_ui theme! 🎨✨