日期:2026-09-03 | 状态:定稿(对话讨论 + 代码核实,无未决项)
PosOrder.payType = "6" 表示線下轉賬。OrderLifecycleService.PAY_TYPE_TRANSFER(现有 PAY_TYPE_CASH="4" 同文件)。GET /chanting/store/bankInfo?id={storeId}(匿名),路径:门店 → pos_store.user_id(商家主账号)→ info_user 三字段(bankAccountName/bankName/bankAccountNo,026 已加);任一为空返回 data=null。UserOrderController.createOrder 的 paymentMethod 直接透传为 payType(第259行),无白名单校验;6 天然可下单(state=0、payStatus=0、collectPayment 不设)。GET /system/orderShOprate/confirmTransferPayment,结构照抄 confirmCashPayment(PosOrderShOprateController:397):校验 payType=6、state≠4(已取消拒绝)、payStatus 0→1、orderLogHelper 记「商家XX确认转账收款」;外送单(type=0)确认后调用 deliveryOrderNotificationService.notifyOrderAvailable(order) 通知附近骑手。notifyOrderAvailable = "支付完成且仍待骑手接单时通知附近骑手",OMG 支付成功后正是这样调(OmgPaymentNotifyService:189);转账单确认收款 = 它的"支付完成"时刻,不挂钩子则订单进骑手池但无人被通知。orderList tab=newTask)现有查询已含 eq(PosOrder::getPayStatus, 1L)(PosOrderQsOprateController:347),payStatus=0 的转账单自动不可见。PosOrderQsOprateController.acceptOrder 增加校验:payType=6 && payStatus≠1 → 拒绝,提示 key no.order.transfer.not.paid(「商家确认收款后骑手才能接单」,五份 properties)。ruoyi-admin/src/main/resources/i18n/ 下 messages.properties(默认,内容为 vi)、messages_zh_CN、messages_zh_TW、messages_en_US、messages_vi 全部五份。no.order.paytype.not.transfer(非转账单)、no.order.transfer.cancelled(已取消不可确认)、no.order.transfer.already.paid(已收款)、no.order.transfer.not.paid(骑手门禁提示)。index.vue 的 paymentTypeLabel 映射加 6: 'OfflineTransfer';i18n key 加 index 命名空间四语言(zh 线下转账 / tw 轉賬支付 / en Transfer Payment / vi Chuyển khoản)。列表列与详情弹窗共用该函数,一处改两处生效。