99 lines
6.0 KiB
Markdown
99 lines
6.0 KiB
Markdown
|
|
# 智能饭菜规划 - 易用性改进建议
|
|||
|
|
|
|||
|
|
| 文档 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| 目标 | 提升用户在使用「生成规划 → 保存 → 查看历史」全流程时的易用性 |
|
|||
|
|
| 版本 | v1.0 |
|
|||
|
|
| 更新日期 | 2026-02-23 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 一、当前流程简要回顾
|
|||
|
|
|
|||
|
|
- **生成**:填写参数(家乡必填)→ 点击「生成饭菜规划」→ 展示结果,出现「复制」「保存」按钮。
|
|||
|
|
- **保存**:点击「保存规划」→ 调用 API,提示「保存成功」。
|
|||
|
|
- **查看历史**:通过右上角「我的规划」或规划页「查看已保存的规划」进入列表;列表为卡片 + 分页,支持删除;**复制功能当前未实现**(显示「复制功能开发中」)。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 二、改进建议(按优先级)
|
|||
|
|
|
|||
|
|
### 1. 生成规划阶段
|
|||
|
|
|
|||
|
|
| 建议 | 说明 | 优先级 |
|
|||
|
|
|------|------|--------|
|
|||
|
|
| **一键填充示例** | 在表单旁增加「填充示例」按钮,点击后自动填入示例参数(如家乡、喜好、禁忌),新用户可快速体验生成。 | P1 |
|
|||
|
|
| **参数说明/占位** | 在「个人喜好」「饮食禁忌」「预算」旁增加简短说明或更具体的 placeholder,减少用户不知道填什么的困惑。 | P2 |
|
|||
|
|
| **上次参数记忆** | 使用 localStorage 记住上次使用的家乡、人数、餐型等(不记敏感信息),下次进入页面自动填充,减少重复输入。 | P2 |
|
|||
|
|
| **生成中可取消** | 生成请求时间较长时,提供「取消」按钮或至少明确「生成中,请稍候」的进度提示。 | P2 |
|
|||
|
|
|
|||
|
|
### 2. 保存规划阶段
|
|||
|
|
|
|||
|
|
| 建议 | 说明 | 优先级 |
|
|||
|
|
|------|------|--------|
|
|||
|
|
| **保存后跳转/引导** | 保存成功后,除了 toast 提示外,可增加「前往查看」按钮或短文案「已保存,可到【我的规划】查看」,并可选自动跳转到历史页。 | P0 |
|
|||
|
|
| **保存前可选标题/备注** | 保存时弹窗让用户输入「规划名称」或「备注」(如「周末家庭餐」),便于在历史列表中识别。若后端暂无字段,可先存到现有字段或延后实现。 | P1 |
|
|||
|
|
| **防止重复保存** | 保存成功后可将当前结果标记为「已保存」,同一内容再次点击保存时提示「本规划已保存过」或禁用按钮,避免重复记录。 | P1 |
|
|||
|
|
| **未登录提示** | 未登录用户保存时使用默认身份,在保存按钮旁或保存前提示「未登录时规划将保存到本地身份,登录后可统一查看」,并引导登录。 | P2 |
|
|||
|
|
|
|||
|
|
### 3. 查看历史阶段
|
|||
|
|
|
|||
|
|
| 建议 | 说明 | 优先级 |
|
|||
|
|
|------|------|--------|
|
|||
|
|
| **实现复制功能** | 历史页「复制」按钮当前为「复制功能开发中」,建议实现:复制当前条目的 `meal_plan_content` 纯文本到剪贴板,并提示「已复制到剪贴板」。 | P0 |
|
|||
|
|
| **列表摘要展示** | 历史卡片除参数外,可展示规划内容的**前 1~2 行或前 80 字**作为摘要,便于不展开即可区分不同规划。 | P1 |
|
|||
|
|
| **单条详情页/展开** | 支持点击某条规划进入详情页,或在当前页展开完整内容(含 Markdown 渲染),避免只在长列表中滚动。 | P1 |
|
|||
|
|
| **排序与筛选** | 支持按时间、餐型、家乡等排序;可选按「早餐/午餐/晚餐」筛选,方便查找。 | P2 |
|
|||
|
|
| **空状态强化** | 历史为空时,除「创建饭菜规划」按钮外,可补充一句「从智能饭菜规划页生成并保存后,会出现在这里」,降低新用户困惑。 | P2 |
|
|||
|
|
|
|||
|
|
### 4. 导航与入口
|
|||
|
|
|
|||
|
|
| 建议 | 说明 | 优先级 |
|
|||
|
|
|------|------|--------|
|
|||
|
|
| **规划页与历史页统一顶栏** | 历史页使用独立 navbar,与主站风格不一致。建议历史页也继承 base.html,与「饭菜规划」页共用顶栏和用户菜单,保证「我的规划」入口统一、不 404。 | P1 |
|
|||
|
|
| **面包屑** | 在规划页、历史页增加面包屑(如 首页 > 智能饭菜规划 > 我的规划),方便理解层级与返回。 | P2 |
|
|||
|
|
|
|||
|
|
### 5. 反馈与容错
|
|||
|
|
|
|||
|
|
| 建议 | 说明 | 优先级 |
|
|||
|
|
|------|------|--------|
|
|||
|
|
| **生成失败重试** | 生成接口失败时,除提示错误信息外,提供「重试」按钮,避免用户重新填表单。 | P1 |
|
|||
|
|
| **保存失败保留内容** | 保存失败时,不清空当前生成结果,方便用户检查网络后再次保存或复制。 | P1 |
|
|||
|
|
| **加载与空状态区分** | 历史列表加载中、空列表、加载失败三种状态区分明确(已有加载/空状态,可再补充「加载失败,点击重试」)。 | P2 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 三、可优先实现的 3 项(高性价比)
|
|||
|
|
|
|||
|
|
1. **保存成功后引导去历史**
|
|||
|
|
保存成功 toast 旁增加「去查看」按钮,跳转到 `/meal-planning/history`,减少用户「不知道保存到哪了」的困惑。
|
|||
|
|
|
|||
|
|
2. **历史页复制功能**
|
|||
|
|
在历史列表的每条规划上,复制按钮调用 `navigator.clipboard.writeText(plan.meal_plan_content)`,并提示「已复制到剪贴板」,补齐当前缺失能力。
|
|||
|
|
|
|||
|
|
3. **历史页继承 base 模板**
|
|||
|
|
将 `meal_planning_history.html` 改为继承 `base.html`,只保留列表、分页、删除等主要内容块,顶栏与用户菜单与全站一致,「我的规划」从右上角进入不再 404,体验统一。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 四、后续可选增强
|
|||
|
|
|
|||
|
|
- **规划命名/备注**:数据模型增加可选字段,保存时让用户填名称或备注,列表展示名称。
|
|||
|
|
- **导出**:单条或列表导出为 PDF/纯文本,方便打印或分享。
|
|||
|
|
- **移动端**:对 `meal_planning_mobile.html` 做同样的「保存后引导」「历史入口」与复制逻辑,保持与 PC 一致。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 五、关联文件(便于开发)
|
|||
|
|
|
|||
|
|
| 功能 | 文件 |
|
|||
|
|
|------|------|
|
|||
|
|
| 生成/保存流程 | `src/flask_prompt_master/templates/meal_planning.html` |
|
|||
|
|
| 历史列表/复制/删除 | `src/flask_prompt_master/templates/meal_planning_history.html` |
|
|||
|
|
| 列表/详情 API | `src/flask_prompt_master/routes/meal_planning.py`(list/detail) |
|
|||
|
|
| 顶栏/我的规划入口 | `src/flask_prompt_master/templates/base.html` |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
*以上建议可直接作为需求条目或迭代任务使用。*
|