|
|
@@ -122,3 +122,25 @@
|
|
|
- 骑手运费由骑手与商家线下交接,系统不记录、不结算。
|
|
|
- 支付方式值 6 为全新值,无历史数据冲突(历史值域 1-5)。
|
|
|
- 商家确认收款入口同时面向商家 App 与商家 Web 预留(本期实现接口,Web 端按钮可后续按需补)。
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 2026-09-21 变更记录:现金支付开放用户端堂食/自取下单
|
|
|
+
|
|
|
+现金(payType=4)原规则「仅商家创建订单可用,客户端下单直接拒绝」调整为:**用户端自取(type=1)/堂食(type=2)可直接以现金下单**;外送(type=0)维持仅商家创建(客户端仍报 `no.paytype.cash.merchant.only`)。
|
|
|
+
|
|
|
+**改动点**(commit `31bb384`,branch test):
|
|
|
+
|
|
|
+1. `UserOrderController.createOrder`:现金限制改为「type 非 1/2 才拒绝」
|
|
|
+2. `UserOrderController.orderList` active tab:线下收款分支 `payType='1'` 扩为 `IN ('1','4')`——现金自取/堂食单在商家确认收款前即可见
|
|
|
+3. `PosOrderShOprateController.orderList` pending tab:同上扩展——否则用户下的现金自取单(state=0)不进商家待受理列表
|
|
|
+4. `UnifiedOrderTab` ACTIVE(SQL 条件与 matches 内存判定同源扩展,常量 `OFFLINE_PAYABLE_PAY_TYPES=['1','4']`)
|
|
|
+5. 测试同步:`OrderListPaymentFilterTest`、`UnifiedOrderTabTest` 补 payType=4 断言(62/62 绿)
|
|
|
+
|
|
|
+**不变的语义**:
|
|
|
+
|
|
|
+- `confirmCashPayment`(商家确认现金收款,payStatus 0→1)流程不变;商家创建现金单路径不变
|
|
|
+- 待付款 tab 仍仅在线支付未付(现金/到付不进待付款)
|
|
|
+- `completeOrder`(自取/堂食完成)自动 payStatus 0→1 不变
|
|
|
+- 用户取消仅限 state=0;现金单未支付、无退款路径
|
|
|
+- LinePayOrderGuard 只拦 LINE Pay 未付单,现金单受理/出餐/完成不受影响
|