前置:后端已启动(JDK21 编译);数据库已执行 026 的银行字段 ALTER(测试商家资料可填银行三字段);foodie-store 已构建。
# 门店换成测试商家(银行三项齐全)的门店 id
curl "http://localhost:8080/chanting/store/bankInfo?id=<门店id>"
# 期望 data 含 accountName/bankName/accountNo
# 清空任一字段后再查 → data=null
# 1) 用户 token 下单(客户App链路,也可用商家代下);paymentMethod 传 "6"
# 期望:订单创建成功,payType=6、state=0、payStatus=0
# 2) 骑手 token 直接强行接单(未确认收款)
curl -H "token: <骑手token>" "http://localhost:8080/system/orderQsOprate/acceptOrder?id=<orderId>"
# 期望:拒绝,提示「商家确认收款后骑手才能接单」
# 3) 骑手抢单列表 tab=newTask 查询
# 期望:该单不在列表中
# 商家 token 确认收款
curl -H "token: <商家token>" "http://localhost:8080/system/orderShOprate/confirmTransferPayment?id=<orderId>"
# 期望:成功;重复调用 → 「该订单已确认收款」;订单操作日志出现「商家XX确认转账收款」
# 再试骑手接单 → 成功;商家接单/出餐/取餐/送达全链路正常
# (外送单确认后附近骑手收到新单推送)
confirmCashPayment 行为不变(非现金单调用仍报「不是现金支付订单」)foodie-store 订单管理页查看转账单,支付方式列显示「线下转账」;切四种界面语言均正确。