全局业务规则
1. 用户身份与登录
1.1 可匿名浏览的范围
1.2 必须登录 / 绑定手机号的动作
- 提交订单
- 使用优惠券、积分、储值、次卡
- 查看“我的”资产
- 查看消息中心
- 提交退款申请
- 提交评价
1.3 登录拦截方式
- 优先使用
C03 登录授权弹层
- 拦截后登录成功,应返回原业务场景继续执行
2. 门店与场景规则
2.1 场景枚举
| 值 |
名称 |
说明 |
delivery |
外卖配送 |
需要地址、配送范围和配送费 |
pickup |
到店自提 |
需要取餐时间、取餐人信息 |
dine_in |
堂食扫码 |
需要门店和桌号 |
2.2 门店选择规则
- 顾客必须在“某一家门店”下点单
- 同一时间购物车只属于一个门店 + 一个场景
- 切换门店时,应提示当前购物车可能清空
2.3 堂食规则
- 堂食优先由扫码进入
- 扫码后自动识别门店与桌号
- 堂食场景默认不展示配送地址与配送费模块
3. 商品与价格规则
3.1 商品展示规则
- 商品按分类展示
- 支持热销、招牌、新品、推荐等标签
- 商品在以下情况下显示不可售:
3.2 SKU 与规格规则
- 规格做法与加料均在商品详情抽屉中完成
- 当商品启用多规格时,价格与库存以 SKU 为准
- 如果规格变化导致库存不足,应立即提示
3.3 费用结构
结算时至少展示以下金额项:
- 商品金额
- 打包费
- 餐具费
- 配送费
- 优惠减免
- 实付金额
4. 优惠与资产规则
4.1 资产类型
| 类型 |
说明 |
| 优惠券 |
满减券、折扣券、免配送费券 |
| 积分 |
获取、抵扣、兑换 |
| 储值余额 |
充值后可支付订单 |
| 次卡 |
对特定商品或分类核销 |
| 会员等级 |
折扣、积分倍率、生日权益、会员日权益 |
4.2 资产使用原则
- 顾客端只负责展示可用资产和命中结果
- 具体叠加、互斥、优先级由后台规则决定
- 若资产不可用,必须给出原因说明
4.3 典型不可用原因
- 未达到金额门槛
- 不适用当前门店
- 不适用当前场景
- 不适用当前商品
- 已过期
- 已使用
5. 订单状态规则
5.1 订单状态定义
| 状态值 |
中文名称 |
说明 |
pending_pay |
待支付 |
已提交订单,未完成支付 |
paid_wait_accept |
已支付待接单 |
等待商家处理 |
preparing |
制作中 |
商家已接单,正在备餐 |
delivering |
配送中 |
外卖场景履约中 |
wait_pickup |
待自提 |
自提场景等待到店取餐 |
dine_in_serving |
堂食进行中 |
堂食场景订单进行中 |
finished |
已完成 |
订单已履约完成 |
refunding |
退款中 |
售后处理中 |
refunded |
已退款 |
退款已完成 |
closed |
已关闭 |
超时取消或主动取消 |
5.2 订单动作与状态对应
待支付:可继续支付、取消订单
已支付待接单 / 制作中:可查看详情、催单、部分场景可申请退款
配送中 / 待自提 / 堂食进行中:可查看履约信息
已完成:可评价、再来一单
退款中 / 已退款:可查看退款详情
6. 消息通知规则
6.1 消息分类
| 类型 |
内容范围 |
| 订单消息 |
支付成功、接单、出餐、配送、退款处理 |
| 营销消息 |
发券提醒、活动开始、会员日提醒 |
| 系统通知 |
门店公告、规则更新、服务通知 |
6.2 消息行为
- 未读消息需要角标或红点提示
- 进入消息详情或打开消息中心后,消息可置为已读
- 消息应能跳转到对应业务页面
7. 页面通用状态
所有列表页和详情页都要考虑以下状态:
7.1 典型空态
- 无门店可选
- 当前分类无商品
- 无可用优惠券
- 无历史订单
- 无消息
7.2 典型错误态
- 网络异常
- 定位失败
- 支付失败
- 加载订单失败
- 退款提交失败
8. 通用交互约束
- 金额统一用
¥ 展示
- 主要 CTA 按钮固定在页面底部或区块底部
- 结算相关页面必须把金额明细解释清楚
- 场景切换、门店切换、地址切换属于高风险动作,需要在必要时提示购物车清空
- 同一页面的主要操作按钮文案要稳定,不同页面不要频繁变形