最终金额口径
输入金额订单金额
输入金额实付金额
0.00优惠金额
0.00管理费
0策略 ID
不增加“实际支付方式”。现金与补贴仍由个人账户底层扣款顺序拆分,并满足 cash + subsidy = pay_price。
业务流程
选择便利店档口/设备/人员→填写时间和实际金额→申请审核→按录入金额扣款
餐段只记录
根据档口早、午、晚餐营业时间记录餐段;没有命中任何时间段时默认午餐。即使不在营业时间内也允许补单,餐段不参与资格、计价和限制。
规则边界
不再执行
- 消费策略与首次消费优惠
- 团餐、酒店、特殊人群价格规则
- 时间窗口和餐段准入
- 消费次数、每餐/每日次数及限额
- 折扣、优惠和管理费
- 报餐、订餐、现场就餐校验
继续保留
- 独立档口与设备绑定
- 人员有效、在职及资金账户同步
- 金额格式和正数校验
- 余额/透支底层资金安全
- 权限、审核、撤回、审计日志
- 幂等、防重导入、退款原路回补
当前与目标对比
| 环节 | 当前 | 目标 |
|---|---|---|
| 输入金额 | 原始金额 | 最终实际消费金额 |
| 策略 | 匹配场景 5 | 完全跳过 |
| 最终金额 | 策略调整后的金额 | 原样使用输入金额 |
| 时间/餐段 | 参与策略和限制 | 只记录,未命中默认午餐 |
| 审核复核 | 比较策略和计价结果 | 仅复核基础数据、金额和资金安全 |
技术改造
store便利店预览和支付禁止调用applyMarketingStrategy()。- 按档口营业时间计算记录餐段,未命中返回午餐。
- 订单固定写入优惠 0、管理费 0、策略 ID 0、刷脸直付 0。
- 审核执行前取消便利店策略变化比较,保留金额和资金安全复核。
- 批量模板保留实际消费时间,金额改为最终实际消费金额。
ai_api当前无便利店补单入口,原则上不改,只回归 H5 场景。
直扣分支只能由服务端固定的 supplement_scene=2 触发,禁止前端传“跳过策略”开关。
隔离与回归(实施硬边界)
只允许服务端固定的 supplement_scene=2 进入直扣分支。任何其他入口行为发生变化,都判定本次改造验收失败。
- 堂食补单继续走原价格规则、消费策略、时间、餐段、次数和限额逻辑。
- 普通消费机刷卡、扫码、刷脸、自定义和定额消费保持原逻辑。
- 共用订单/扣款方法对其他调用方的默认行为不得改变;即使增加内部场景分支,也必须默认关闭。
- H5 本人餐、亲友餐、招待餐、外卖继续使用场景 1/2/3/4,ai_api 不新增便利店补单入口。
- 第三方下单退款、正常订单退款及异步导出保持不变。
- 前端不能通过构造参数让其他业务入口绕过策略。
验收重点
- 即使存在策略、首笔优惠或管理费,输入 10 元仍扣 10 元。
- 非营业时间允许补单并记录午餐。
- 达到次数/限额或同餐段已有订单时仍允许补单。
- 单笔与批量一致,cash + subsidy = pay_price = 输入金额。
- 全额/部分退款守恒,堂食、正常消费机、H5 和第三方链路无变化。
评审确认状态
1. 已确认:按现有余额与透支配置逻辑执行。当前开发库透支额度为 0,余额不足时拒绝执行,不允许补成负余额。
2. 已确认:未匹配任何营业餐段时,固定记录为午餐。
3. 已确认:页面和批量模板统一使用“实际消费金额”。
三项业务口径已全部确认,方案可以进入需求建项和开发阶段。