迷你卡片

This commit is contained in:
Developer
2026-04-14 05:35:30 +08:00
parent 5ce8759a18
commit c26ff354ee
195 changed files with 38057 additions and 1842 deletions

View File

@@ -498,6 +498,7 @@
| 🌙 就寝 | `Get.toNamed` | 就寝提醒 | `/profile/bedtime-reminder` | - |
| 📋 营养 | `Get.toNamed` | 营养中心 | `/nutrition` | - |
| 💬 反馈 | `Get.toNamed` | 意见反馈 | `/chat` | - |
| ❤️ 迷你卡片 | `Get.toNamed` | 迷你卡片页 | `/mini-card` | - |
### 🎨 美观问题
| # | 问题 | 严重度 | 建议 |
@@ -825,6 +826,104 @@
---
## 🃏 迷你卡片页 (MiniCardPage)
```
┌─────────────────────────────┐
│ ← 返回 迷你卡片 🔍 │ ← CupertinoNavigationBar
├─────────────────────────────┤
│ [全部][素菜][荤菜][水产]... │ ← 横向分类标签
├─────────────────────────────┤
│ │
│ ┌─────────────────────┐ │
│ │ 🃏分类 ❤️ ⭐ 📤 │ │ ← 液态玻璃顶部操作栏
│ │ │ │
│ │ [菜品图片] │ │ ← _MiniCardImageView 独立组件
│ │ │ │
│ │ ┌─────────────────┐ │ │ ← 液态玻璃底部信息区
│ │ │ 菜名 │ │ │
│ │ │ 🏷️ 分类 详情 → │ │ │
│ │ └─────────────────┘ │ │
│ └─────────────────────┘ │
│ │
│ ┌─────────────────────┐ │
│ │ 👎 │ ❤️ │ ⭐ │ ↩️ │ │ ← 底部操作按钮
│ └─────────────────────┘ │
│ │
│ ████████░░░░ 12/341 │ ← 进度条
│ │
└─────────────────────────────┘
全屏图片查看器(点击卡片触发):
┌─────────────────────────────┐
│ ✕ 1/341 📤❤️ │ ← 液态玻璃顶栏
│ │
│ │
│ [全屏菜品图片] │ ← PageView 左右滑动
│ │
│ │
│ ┌─────────────────────────┐ │ ← 液态玻璃底部信息
│ │ 菜名 │ │
│ │ 🏷️ 分类 · 描述 详情 → │ │
│ └─────────────────────────┘ │
└─────────────────────────────┘
首页瀑布流迷你卡片横幅:
┌─────────────────────────────┐
│ 🃏 迷你卡片 │ ← 液态玻璃标签
│ │
│ [全宽菜品图片] │ ← MiniCardDiscoverCard
│ │
│ ┌─────────────────────────┐ │ ← 液态玻璃底部
│ │ 菜名 🏷️分类 查看 → │ │
│ └─────────────────────────┘ │
└─────────────────────────────┘
网格视图模式:
┌──────┐ ┌──────┐ ┌──────┐
│[图片]│ │[图片]│ │[图片]│
│菜名 │ │菜名 │ │菜名 │
│分类 │ │分类 │ │分类 │
└──────┘ └──────┘ └──────┘
```
### 📄 页面文件
- `lib/src/pages/discover/mini_card_page.dart` — 主页面+全屏查看器+图片组件
- `lib/src/models/mini_card_model.dart` — 数据模型
- `lib/src/services/data/mini_card_service.dart` — 数据服务(缓存优先)
- `lib/src/widgets/discover/mini_card_discover_card.dart` — 瀑布流横幅组件
### 🔗 跳转关系
| 触发元素 | 跳转方式 | 目标页面 | 路由 | 传参 |
|---------|---------|---------|------|------|
| 个人中心迷你卡片 | `Get.toNamed` | 迷你卡片页 | `/mini-card` | - |
| 首页瀑布流横幅 | `Get.toNamed` | 迷你卡片页 | `/mini-card` | initialRecipeId |
| 卡片点击 | 全屏查看器 | 本页弹窗 | - | - |
| 详情按钮 | `Get.toNamed` | 菜品详情页 | `/recipe-detail` | id |
| 搜索结果点击 | 本页跳转 | 本页定位 | - | index |
### 🎨 功能特性
| # | 功能 | 说明 | 状态 |
|---|------|------|------|
| 1 | 🃏 左右滑动 | 拖拽>80px触发滑动动画效果 | ✅ |
| 2 | ❤️ 喜欢/不喜欢 | 持久化到SharedPreferences | ✅ |
| 3 | ⭐ 收藏 | 与全局收藏系统联动 | ✅ |
| 4 | 🔍 搜索 | 搜索菜品名称,点击跳转定位 | ✅ |
| 5 | 📂 分类筛选 | 11个分类横向滚动标签 | ✅ |
| 6 | 📱 网格视图 | 卡片/网格双视图切换 | ✅ |
| 7 | 💾 本地缓存 | 5-10条记录不含图片 | ✅ |
| 8 | 🗑️ 缓存管理 | 缓存管理页可清理 | ✅ |
| 9 | 📊 进度条 | 显示浏览进度 | ✅ |
| 10 | 🏠 瀑布流嵌入 | 首页1:20比例插入迷你卡片横幅 | ✅ |
| 11 | 🖼️ 图片独立组件 | _MiniCardImageView 文本在图片内底部 | ✅ |
| 12 | 🪟 液态玻璃 | 顶部操作栏+底部信息区 GlassContainer | ✅ |
| 13 | 📱 全屏查看器 | PageView+异步预加载5张相邻图片 | ✅ |
| 14 | 📤 分享 | share_plus 分享菜品信息+图片URL | ✅ |
| 15 | 💾 缓存优先 | 查看过卡片存入缓存,先显示缓存 | ✅ |
| 16 | 🔗 路由参数 | initialRecipeId 从首页跳转指定卡片 | ✅ |
---
## 📊 全局美观问题汇总
| 优先级 | 问题 | 影响页面 | 建议 | 状态 |
@@ -888,20 +987,6 @@
> 以下功能在v0.92.0版本已全部实现
| # | 功能 | API接口 | 数据源 | 页面位置 | 开发复杂度 | 状态 |
|---|------|---------|--------|---------|-----------|------|
| 1 | 🕐 用餐时段推荐 | `api_filter.php?act=meal_times` | eating_times.json(34种) | 首页/工具中心 | ⭐⭐ | ✅v0.92.0 |
| 2 | ⚠️ 过敏原警示 | `api.php?act=full` allergens字段 | gmy.json(585种) | 菜品详情页 | ⭐⭐ | ✅v0.92.0 |
| 3 | 📊 营养可视化 | `api.php?act=full` nutrition字段 | nutrition_types.json(31种) | 菜品详情页/营养中心 | ⭐⭐⭐ | ✅v0.92.0 |
| 4 | 🏆 评分排行榜 | `api_hot.php?type=recipe&sort=rate` | api_hot.php | 热门排行页 | ⭐ | ✅v0.92.0 |
| 5 | 📱 迷你信息加载 | `api.php?act=mini&id=` | api.php | 列表页/卡片 | ⭐⭐ | ✅v0.92.0 |
| 6 | 🔍 排除筛选 | `api_filter.php?act=filter_recipes` exclude_*参数 | api_filter.php | 高级搜索页 | ⭐ | ✅v0.92.0 |
| 7 | 🌐 IP状态显示 | `api_action.php?act=ip_status` | api_action.php | 菜品详情页 | ⭐ | ✅v0.92.0 |
| 8 | 🏷️ 分类标签联动 | `api_filter.php?act=category_tags&category_id=` | api_filter.php | 分类浏览页/高级搜索 | ⭐⭐ | ✅v0.92.0 |
| 9 | 🥗 食材分类浏览 | `api_filter.php?act=ingredient_main_categories/sub_categories` | api_filter.php | 发现页/工具中心 | ⭐⭐ | ✅v0.92.0 |
| 10 | 📋 食谱子分类 | `api_filter.php?act=recipe_sub_categories&parent_id=` | api_filter.php | 分类浏览页 | ⭐ | ✅v0.92.0 |
| 11 | 🎲 筛选步骤引导 | `api_what_to_eat.php?act=filter_steps` | api_what_to_eat.php | 今天吃什么 | ⭐⭐ | ✅v0.92.0 |
| 12 | 🔢 编码/模糊查询 | `api_what_to_eat.php?act=detail&code=/title=` | api_what_to_eat.php | 搜索页 | ⭐ | ✅v0.92.0 |
### 🟡 需组合API开发P3优先级