产品需求文档:商品选项点单屏展示状态(隐藏 / 不可用)

使用说明:Markdown 版本适合在仓库内查看;如需在浏览器中阅读带截图的完整版本,优先使用同目录的 prd-product-option-display-status.html

1. 介绍 / 概述

商品的每个选项组(咖啡豆、温度、浓度、糖浆、甜度、杯型、杯盖等)下有多个选项。此前,选项一旦配置就必然出现在客户点单屏上,且始终可以被点选。运营在实际经营中有两类高频诉求无法满足:

本需求为每个选项引入「点单屏展示状态」,共三种:

状态点单屏表现适用场景
正常正常展示、可点选默认状态
不可用灰显禁点,客户可见但无法选择临时缺货
隐藏不显示长期下架

状态在商品编辑页的「选项配置」页签中设置,立即生效于该商品的点单屏预览;保存商品后随商品数据一起持久化。

2. 目标

3. 适用范围

不在本文件范围内的内容:

4. 交互设计

4.1 标签双热区

「选项配置」页签中,每个选项以标签形式横向排列。每个标签分为两个热区:

设计动机:切换编辑对象是高频动作,设置状态是低频动作。若点击标签必弹菜单,运营只想切换时会被反复打断。双热区让两个动作各有明确入口。

选项标签:主体 + 右侧状态热区(带「不可用」徽标)
选项标签:主体 + 右侧状态热区(带「不可用」徽标)

4.2 状态徽标

徽标常驻展示,运营扫一眼标签行即可掌握整组选项的状态分布。

4.3 状态菜单

点击状态热区后弹出菜单,标题为「『选项名』点单屏展示状态」,包含三个选项,每项附一行说明:

当前状态项带勾选标记。点击任意项立即生效并收起菜单,无需额外确认。

桌面端:状态菜单锚定在标签下方
桌面端:状态菜单锚定在标签下方
移动端:状态菜单为底部动作面板
移动端:状态菜单为底部动作面板

5. 用户故事

US-001:临时停用缺货选项

描述: 作为运营人员,某款糖浆临时缺货时,我希望把它设为「不可用」,客户能看到该选项存在但无法点选,等补货后我再恢复。

验收标准:

US-002:长期下架选项

描述: 作为运营人员,某个选项不再售卖时,我希望把它设为「隐藏」,客户点单屏上完全看不到它,但它的多语言文案、附加价格等配置保留,将来恢复售卖时不用重新配置。

验收标准:

US-003:切换编辑对象不受状态菜单打扰

描述: 作为运营人员,我在多个选项之间来回切换维护文案时,不希望每次点击标签都弹出状态菜单。

验收标准:

US-004:默认选项被隐藏或停用时自动迁移

描述: 作为运营人员,当我把当前默认选项设为「隐藏」或「不可用」时,我希望系统自动把默认迁移到第一个正常选项,并明确告诉我迁移结果,避免点单屏出现默认选中一个不可点选项的矛盾状态。

验收标准:

US-005:每组至少保留一个正常选项

描述: 作为运营人员,我不能把一个选项组的全部选项都隐藏或停用,否则客户在点单屏上无从选择。

验收标准:

US-006:未保存也能在点单屏预览中看到状态效果

描述: 作为运营人员,我改完选项状态后想立刻点「预览点单屏」确认效果,不想先保存商品。

验收标准:

点单屏预览:不可用选项灰显禁点,附加价格仍展示
点单屏预览:不可用选项灰显禁点,附加价格仍展示

6. 功能要求

6.1 状态设置

6.2 状态可见性

6.3 守卫规则

6.4 点单屏表现

6.5 数据保存

7. 状态变更结果矩阵

操作目标选项结果
设为不可用 / 隐藏非默认选项,组内还有其他正常选项直接生效,无迁移
设为不可用 / 隐藏当前默认选项,组内还有其他正常选项生效,默认自动迁移到第一个正常选项,弹出迁移提示
设为不可用 / 隐藏该组最后一个正常选项拦截,提示「每组至少保留一个正常选项」
恢复正常任意选项永远允许,无迁移

8. 非目标

9. 成功标准

10. 修订记录

日期说明
2026-07-14首版:三态状态模型、标签双热区交互、守卫与默认迁移规则、点单屏草稿预览