|
|
@@ -4,7 +4,9 @@
|
|
|
|
|
|
**Feature Branch**: `codex/036-multi-store-checkout`,从 `test-202609v2` 创建;平台管理 PC 端仓库使用同名分支。
|
|
|
|
|
|
-**Status**: Draft,供用户逐轮讨论;业务代码未开始。
|
|
|
+**Status**: 实现中;已提交配置与询价基础,创建批次、支付、退款、骑手配送及两端列表尚未完成验收。新增展示细节继续讨论。
|
|
|
+
|
|
|
+2026-10-16 两端列表/详情展示补充建议见 [frontend-display-plan.md](frontend-display-plan.md)。同日用户确认项目审查的四项建议,作为本轮实施与验收要求:接入 037 多店无人接单取消、激活前预约过期检查、建批后地址冻结、下调上限时保护未接组,见 FR-042~045。新增规则确认不等于代码已实现。
|
|
|
|
|
|
**Input**: 用户提供《多店下单与骑手合并需求变更 (2).docx》,确认各店独立收款、在线批次全部子单付款完成后才开放履约,并要求纳入 OMG 正式退款、预约配送和到付;夜市自配送、自取沿用原流程。先给方案、确认细节后实现,可持续调整。
|
|
|
|
|
|
@@ -15,7 +17,7 @@
|
|
|
- 一次多店结算按店生成独立子订单,款项分别付给对应商家,不改为平台代收。
|
|
|
- 新批次创建时各子单待收银确认,不预先认定付款方式;线上须服务端确认支付成功,到付须用户选择并由服务端校验确认。全部成员就绪前,商家/骑手不能提前履约。
|
|
|
- 首版纳入即时配送、预约配送和到付;夜市自配送、自取沿用原流程,不加入本次多店批次规则。
|
|
|
-- 新预约时间语义、最迟接单及无人接单自动取消仍留后续。2026-10-13用户确认本轮补充普通平台配送外卖和新多店外卖预约单的后续开放扫描,沿原有效开放时点,支持重启补扫、幂等开放与通知重试;新批次额外要求已生效,普通预约不套用多店期限。夜市自配送、自取不纳入。后续边界见plan.md「预约时间处理:后续独立事项」。
|
|
|
+- 新预约时间语义与倒推最迟接单算法仍留后续;2026-10-16 已确认本轮接入 037 现有无人接单超时规则,不再将这项接入延期。普通平台配送外卖和新多店预约沿原有效开放时点持久扫描,支持重启补扫、幂等开放与通知重试;新批次额外要求已生效,普通预约不套用多店期限。夜市自配送、自取不纳入。
|
|
|
- 各商家可独立设置支付方式,多店不要求共同渠道;本功能仅开放各店已可用的LINE Pay、OMG和到付,不擅自改变商家设置。
|
|
|
- 同批可按店混用LINE Pay、OMG和到付,逐笔收银时选择;即使最终全部到付,也须逐单完成到付确认,不能创建即生效或因旧payStatus=1默认就绪。
|
|
|
- 全部新批次共用创建起15分钟支付发起/到付确认期限,支付下一店、重试/回页面不延长;支付完成与服务端确认缓冲默认5分钟、平台可配置,创建时固化时长和最终确认截止。第15分钟停止新的支付发起、重试、切换方式及到付确认;截止前服务端已记录并实际发起的线上支付尝试,允许在缓冲期继续完成用户认证、渠道付款和服务端确认。此口径经用户确认,取代严格要求第15分钟前完成付款的旧口径;并非第15分钟后仍可发起新交易。全部真实成员经服务端确认合法就绪立即生效,无需等满缓冲;最终确认截止仍未就绪整批取消,真实实收全退含运费、未收款到付只取消。已取消后迟到实收退款、不重开。
|
|
|
@@ -23,7 +25,7 @@
|
|
|
- 同骑手资格以用户选择的第一家店为圆心,按门店坐标计算首店到后续各店的直线距离,不按道路路线距离;范围默认1公里、在平台合并配置中可调整,不能在代码写死1公里。圈外店不进入本次合并结算父单/配送组,不创建其子单、不等待其支付、不计入合并折扣或本批次金额;A/B合并不受圈外C付款影响。
|
|
|
- 即时单与预约单不能进入同一合并配送组;预约单仅预约日期、开始时间和结束时间完全一致时才能同组,不因同用户/地址/围栏而放宽,仅时段重叠也不能合并。不同日期的同一钟点亦不合并;仍支持符合原有效规则的同一预约时段多店,预约时间处理改造仍按既定范围延期。
|
|
|
- 新多店批次创建时完整校验门店、商品、配送资格及金额,成功后固化商品/价格/折后运费快照;付款不因普通改价、上下架或停止接新单/营业时间变化重新算价、自动取消批次,仍可在15分钟内发起支付/确认到付,既有线上交易可在缓冲内完成。付款继续检查归属、订单/批次未取消未过期、方式及凭证可用;快照不是库存保证,实际不能出餐按此前确认的子单规则处理,不新增库存预占体系。
|
|
|
-- 新批次准入/期限、权威算价快照及取消返券仅用于服务端明确标识的新多店批次,不全局改变普通单/历史单的付款、取消、优惠促销及发票规则。本次明确批准普通平台配送预约按原时点补充后续开放扫描,不引入新预约语义、批次15分钟限制或无人接单取消。夜市自配送、自取及其他旧流程不变,新标识缺失不能误判为未生效批次,共享入口不能全局移除原校验。
|
|
|
+- 新批次准入/期限、权威算价快照及取消返券仅用于服务端明确标识的新多店批次,不全局改变普通单/历史单的付款、取消、优惠促销及发票规则。本次明确批准普通平台配送预约按原时点补充后续开放扫描,不引入新预约语义或批次15分钟限制,普通单保持037现有无人接单规则。夜市自配送、自取及其他旧流程不变,新标识缺失不能误判为未生效批次,共享入口不能全局移除原校验。
|
|
|
- 圈外店处理建议:预结算明确列出未纳入店及原因,用户确认本次参与集合后再提交;C保留购物车供另行结算,不自动另建订单、不静默丢掉购物车商品。购物车保留方案属于接入建议,App由前端人员实现。
|
|
|
- 骑手接单数量沿用现有外卖/闪送/总接单数字典:普通独立外卖单算1单,合并配送组整体算1单,不新增骑手实际子单总量上限、相关字典或配置项。同父单的独立配送订单不能合计为1单;闪送原计数与加急独占不变。此前双层容量/子单上限方案已撤回。
|
|
|
- 接组须在同一骑手锁内检查账号资格、现有任务上限和组内门店上限,再原子分配;部分完成/取消不按子单释放任务名额,组内全部有效子单履约结束才释放组任务。已取餐异常未处理结束时不得仅因进入售后而提前释放组任务。
|
|
|
@@ -137,9 +139,9 @@
|
|
|
1. 即时/预约、线上/到付均共用创建起15分钟支付发起/到付确认期限,不延长至预约日期;截止前已记录并实际发起的线上尝试可在默认5分钟可配置缓冲内完成及核实,缓冲不开放新的支付发起、重试、方式切换或到付确认。全部就绪生效后等待原预约开放,不再因结算倒计时取消。
|
|
|
2. 到付子单须用户逐店选择且服务端合法确认,不在创建时默认就绪。所有到付确认完成才统一生效,不在第一条创建或首次确认时提前推送。
|
|
|
3. 接单、商家处理、列表和通知共同检查批次生效及预约开放条件;仅改 isDisplay 不能防止直接接口提前接单。
|
|
|
-4. 本轮按用户本次确认补充旧时点下普通平台配送/新多店预约后续开放扫描、重启补扫、开放幂等及通知重试;新批次额外检查已生效,普通预约不套用新期限,通知不得提前或重复。基本扫描不再延期,不复用废弃TestTask;新预约语义、最迟接单及无人接单自动取消仍单独留后续。
|
|
|
+4. 本轮补充旧时点下普通平台配送/新多店预约后续开放扫描、重启补扫、开放幂等及通知重试;新批次额外检查已生效,普通预约不套用新期限,通知不得提前或重复。不复用废弃TestTask;新预约语义与倒推最迟接单算法延期,037 现有无人接单规则的多店接入按 FR-042 实现。
|
|
|
5. 到付取消不产生未实收款项的在线退款;实际线下收款、取餐和售后仍按现行到付流程处理,不把旧 payStatus=1 当作渠道实收证据。
|
|
|
-6. 已生效预约单无人接单的截止和自动取消延期单独处理;本轮不复用“未付齐付款超时”冒充预约到期处理,不声称已有此功能。
|
|
|
+6. 已生效预约批次按 FR-042 接入 037 无人接单取消,未生效预约批次激活前按 FR-043 检查预约是否已过期;两者均不复用“未付齐付款超时”冒充,且不擅自实现新的预约最迟接单算法。
|
|
|
7. 三店均参与、A选LINE/B选OMG/C选到付时,C须在15分钟内明确合法确认,A/B须在15分钟内由服务端记录并实际发起支付尝试,且在最终截止前完成真实付款核实;最后成员就绪才生效。C仅创建不算就绪,缓冲不放宽C确认期限;超时取消只退真实线上实收。
|
|
|
|
|
|
### US5 平台规则与付清后售后(P2)
|
|
|
@@ -176,14 +178,14 @@
|
|
|
- **FR-009** 支持 LINE Pay 与 OMG;OMG 正式退款必须实现且显式区分环境,未经批准不得用正式交易验证。
|
|
|
- **FR-010** 用户主动取消在未接单阶段按真实交易全额退款含运费,已接单不走用户取消退款;不以旧稿“商品款退、运费保留”默认要求部分退款扩展。异常售后如需部分退款须另确认,任何退款累计不得超实收、部分退款不得标成全额退款。
|
|
|
- **FR-011** 非适用单店/历史订单及夜市自配送、自取保持原流程;新多店到付和预约属于本功能,标识明确区分适用范围。唯一相关补齐为本次批准的普通平台配送预约按旧时点补扫,不套新批次期限。
|
|
|
-- **FR-012** 按项目规范补注释、四语言、SQL 登记、测试和 App 接入文档;本轮仅讨论规格,不直接实现。
|
|
|
+- **FR-012** 按项目规范补注释、四语言、SQL 登记、测试和 App 接入文档;按实施任务交付,规格确认不代表代码已实现。
|
|
|
- **FR-013** 创建、选择方式、子单就绪、真实实收、批次生效和预约开放分别表达;到付确认参加结算期限但不算线上实收,未收款取消不产生虚构退款。旧单店到付创建约定不直接应用新批次。
|
|
|
-- **FR-014(后续独立事项)** 新预约送达时段语义、重算开放/最迟接单及无人接单自动取消仍后续独立处理。本轮已确认补充旧开放时点下普通平台配送/新多店外卖预约的持久扫描、重启恢复、幂等开放与通知重试,见FR-037;不能继续将基本扫描列为延期,不复用废弃TestTask。
|
|
|
+- **FR-014(后续独立事项)** 新预约送达时段语义与倒推开放/最迟接单算法留后续;本轮基本开放扫描按 FR-037、多店接入 037 已有无人接单规则按 FR-042,不再延期。激活前预约失效检查按 FR-043,不改原预约语义,不复用废弃 TestTask。
|
|
|
- **FR-015** 每店独立查询、选择、校验并保存支付方式;批次不要求共同渠道,允许LINE/OMG/到付按店混用,受当前平台/商家/凭证闸门共同约束。只在新批次上下文过滤转账,不改现有单店支付方式查询和商家设置。
|
|
|
- **FR-016** 新多店预结算、创建及后续换方式拒绝payType=6,原单店和历史转账仍走原流程;本轮不新增核款时限、待核款提醒、人工转账退款或补偿入口。仅转账门店提交前明确拒绝其参与本批,不擅自转到付/自动拆单/静默移除,也不关闭平台全局转账开关。
|
|
|
- **FR-017** 外卖任务按进行中的配送组去重加未分组独立订单计数,跨类型总任务为外卖任务加闪送任务;合并组整体算1单,不新增实际子单总量限制。不得按父批次去重或仅排除售后状态来释放已取餐、仍待履约/处置的组任务。
|
|
|
- **FR-018** 复用现有外卖/闪送/总任务字典及合并组最大门店配置。接组只检查外卖任务+1、总任务+1及组门店数;普通外卖增加1任务,闪送保持原计数和加急独占。撤下新子单上限字典、字段、页面管理及相关校验,不把门店上限当作骑手子单总量上限。
|
|
|
-- **FR-019** 现有任务字典缺失/非法/读取异常回退1;合并配置缺失/非法时保守关闭合并报价。预结算/创建检查每组门店上限,接单在骑手锁内使用实时任务容量和门店上限再校验。配置降低不能强制取消骑手已接任务;待接组超出调整后的门店上限时须有明确不可接原因及平台跟进,不改收费快照。
|
|
|
+- **FR-019** 现有任务字典缺失/非法/读取异常回退1;合并配置缺失/非法时保守关闭合并报价。预结算/创建检查每组门店上限,接单在骑手锁内使用实时任务容量和门店上限再校验。配置降低不能强制取消骑手已接任务;存在超出拟设上限的未结束、未承接组时,按 FR-045 拒绝该次下调,不改收费快照。
|
|
|
- **FR-020** 每店折后实付运费同时作为商家给骑手的配送毛收入基数和现有骑手账单计算基数,不再按原运费向商家索取、不新增折扣补差。线上已收款子单由商家按现行方式给骑手折后运费;到付子单骑手给商家该单总额减折后运费,向用户代收该单总额。佣金和税沿用原规则,不能额外支付重复配送收入;原单店转账结算不在本功能中改写。
|
|
|
- **FR-021** 混合付款配送组分别列出各店给商家金额、商家给骑手运费、到付待收总额;只合计真实到付有效子单的待收金额,不将线上单加入代收。取消后的金额及已发生线下款项另跟踪,不仅靠组总额展示。
|
|
|
- **FR-022** 合并报价明确首店锚点、参与店及排除原因,提交校验用户已确认成员且各参与店位于首店圈内。付款进度、批次总额、折扣店数、生效和取消仅作用于该父单成员,圈外C另行结算,不自动创建或等待C付款。
|
|
|
@@ -202,12 +204,17 @@
|
|
|
- **FR-035** 平台合并配置页面维护支付完成与服务端确认缓冲时长,单位分钟,默认5,保存只接受正整数;缺失/非法/读取异常按5分钟安全回退,不能回退为无限等待。创建快照后不因改配置改变旧批次最终截止。发起资格以服务端持久记录的原支付尝试、实际发起事实及时间为准,不能用前端点击/回跳或事后补写时间证明期限内发起;收款须核实渠道真实交易、金额、币种、商家及签名/查询事实。LINE认证/确认/扣款按实际分阶段流程处理,认证成功不算实收;不再要求证明用户认证/扣款均在第15分钟前完成,不以本地记账时间冒充渠道付款时间。
|
|
|
|
|
|
- **FR-036** 新批次付款事实先落库,逐单成功/到付确认不直接发履约新单通知;全部合法就绪后生效并持久记录开放事件。满足预约条件且提交后发送,合并组按组、独立单按子单幂等,失败可重试,取消终态不复活。用户支付结果通知保持真实事实,后续取餐/送达逐子单沿原流程。
|
|
|
-- **FR-037** 补充普通平台配送外卖及新多店预约的持久开放扫描,沿原时间判断/sys_appointorder_handletime,不新增最迟接单或自动取消。创建先设预约信息再判显示;扫描校验原开放时点、未取消未分配和原付款/履约资格,新批次额外已生效,普通单不检查批次期限。重启数据库补扫,开放状态与通知意图原子幂等并支持重试;直接接单不可绕过。自取/夜市自配送不纳入,不批量改写历史已开放单。
|
|
|
+- **FR-037** 补充普通平台配送外卖及新多店预约的持久开放扫描,沿原时间判断/sys_appointorder_handletime,不新增倒推最迟接单算法;现有无人接单规则的多店接入另按 FR-042。创建先设预约信息再判显示;扫描校验原开放时点、未取消未分配和原付款/履约资格,新批次额外已生效,普通单不检查批次期限。重启数据库补扫,开放状态与通知意图原子幂等并支持重试;直接接单不可绕过。自取/夜市自配送不纳入,不批量改写历史已开放单。
|
|
|
- **FR-038** 用户原订单列表与统一列表识别新批次:未选、部分付款、全部未就绪或缓冲核实中保留可见进度/继续结算信息,不因payType空值漏单或payStatus=1误标可履约。真实已付与到付确认分开,生效后逐子单普通进度不被覆盖;覆盖本批LINE、OMG信用卡/Apple Pay及到付,旧非多店分类不全局改写,App只交付接入文档。
|
|
|
- **FR-039** 新多店预结算/创建服务端读取真实门店商品/规格价格、数量与优惠规则,计算餐费、原/折后运费及实付并固化。拒绝跨店商品/规格、非法数量和报价/金额不一致,不能直接保存客户端amount/freight/foodAmount或仅警告放行。明确金额单位与渠道转换,逐店HALF_UP及支付/退款/到付/账单同快照不变,原普通算价不改。
|
|
|
- **FR-040** 新批次整批或合法子单取消释放/返还对应取消成员占用/核销的券,不返仍履约成员的券。保留原有效期,仍有效恢复可用、过期不续期;原券/原子单绑定及状态参加并发幂等,重复取消/退款/扫描不重复返券,旧取消不得释放已由新单使用的券。创建同一券不能并发重复使用,返券不是渠道退款成功;普通非多店券规则不改。
|
|
|
- **FR-041** 新批次详情、付款进度、关联订单、支付/取消按token确定用户并校验父/子/组归属及关联,不能仅凭传入ID返回信息或操作;现有getParentOrderDetail涉及新批次不得原样复用无用户过滤查询。商家仅访问授权子单,骑手沿现有待抢/本人承接权限,不放宽其他商家或用户敏感信息。未授权无款项/状态/退款/返券副作用。
|
|
|
|
|
|
+- **FR-042(2026-10-16 已确认)** 本轮将新多店接入 037 无人接单超时规则,沿用 `pos_order_auto_cancel` 分钟阈值及原预约开始口径。计时基准取批次统一生效、首次实际开放和预约开始(即时忽略)三者最晚值;单子单先付款不启动计时,部分取消、刷新、重试不重置。未承接配送组超时原子取消全部剩余有效成员,与整组接单互斥;已承接组不自动取消。逐交易退真实实收、到付未收不造退款,旧独立订单保持 037 原规则。没有配送组的独立配送成员沿独立订单方式处理,但生效基准仍不得早于父批次统一生效。
|
|
|
+- **FR-043(2026-10-16 已确认)** 尚未生效的预约批次在激活时若当前时间已到或超过预约结束,拒绝激活并整批取消,真实实收按原交易退款、未知/迟到款继续核查退款;不自动转即时单。恢复扫描补处理这种失效批次。原 15 分钟发起/到付确认及缓冲快照不延长,不新增更严格的预约提前量算法。已生效批次不因预约结束直接取消,仍按履约及 FR-042 处理。
|
|
|
+- **FR-044(2026-10-16 已确认)** 建批后冻结本批所有子单的同一收货地址及坐标快照,后续修改地址簿不影响订单。首版不新增多店改址功能,不能通过普通单笔接口改其中一家地址。未生效要改址先整批取消再重新报价下单;生效后按现有已确认取消权限处理,不放开已接单用户取消。
|
|
|
+- **FR-045(2026-10-16 已确认)** 平台降低最大合并门店数时,若存在有效成员数超出新上限的未结束、未承接配送组(包括尚未生效的已建组),拒绝本次配置保存,提示先处理存量组;无冲突才保存。检查须与建批、配置版本及组状态变化一致,不能并发漏过。已承接组不阻止此配置调整,也不被取消;实时接组重验和费用快照规则保留。
|
|
|
+
|
|
|
## Key Entities
|
|
|
|
|
|
- 结算批次:复用OrderParent;成员、创建起15分钟用户操作截止、确认缓冲时长快照/最终确认截止、逐单已就绪/实收及待核实进度、预约信息、收费快照及生效/取消状态。新批次均有用户截止,不设全到付例外;缓冲到期不是已生效预约任务取消时间。
|
|
|
@@ -231,9 +238,9 @@
|
|
|
- **SC-002** 重试同一提交、付款回调和接单请求不产生重复批次、重复支付核销或分裂骑手归属。
|
|
|
- **SC-003** 批次收费等于子单收费合计;总运费等于各店独立打折并舍入后的运费之和,不再按总额打折分摊尾差,所有退款累计不超过实收。
|
|
|
- **SC-004** 服务重启后到期取消和退款可以恢复,失败可追踪且不影响其他子单退款。
|
|
|
-- **SC-005** 普通及非适用历史订单回归覆盖创建、原营业/价格/促销/优惠券/发票、LINE/OMG/到付/转账、取消及履约/通知;新标识为空不被新批次期限/就绪条件拦截或取消,自取/自配送不变。普通平台配送预约仅按SC-025补齐旧时点后续开放,不引入新时间语义或自动取消。
|
|
|
+- **SC-005** 普通及非适用历史订单回归覆盖创建、原营业/价格/促销/优惠券/发票、LINE/OMG/到付/转账、取消及履约/通知;新标识为空不被新批次期限/就绪条件拦截或取消,自取/自配送不变。普通平台配送预约补齐原开放并保持037现有规则,036新增接入只作用于新批次,不重定义预约语义。
|
|
|
- **SC-006** OMG 正式退款发布前完成批准的小额交易联调;模拟测试通过不能代替真实联调通过。
|
|
|
-- **SC-007** 即时到付、预约到付及预约线上验证批次生效与旧预约开放时点兼容,未实收到付不造退款。本轮包括基本开放扫描/重启恢复,详见SC-025;新预约语义、最迟接单与无人接单自动取消仍留后续,不宣称本轮完成。
|
|
|
+- **SC-007** 即时到付、预约到付及预约线上验证批次生效与旧预约开放时点兼容,未实收到付不造退款。本轮包括基本开放扫描/重启恢复,详见SC-025;新预约语义与倒推最迟接单仍留后续;既有037接入按SC-030实施和验证,不能提前宣称完成。
|
|
|
- **SC-008** 验证三店/五店合并组均只算1任务、独立单各算1任务、外卖闪送总任务及加急独占,普通单/组/闪送并发不超过原字典任务上限。上限1时两组仅一组成功,上限2且其他条件满足时两个五店组可接,不另按子单合计拒绝;部分完成/取消不提前释放组任务,已取售后继续占用,字典异常回退1任务而非1家店。
|
|
|
- **SC-009** 餐费100/折后运费32的到付子单应收用户132、给商家100、配送毛收入32;三单均到付合计396/300/96,混合付款只累计到付单待收。用户收费、现金交付、账单运费基数均取同一快照,不能重复收取线上已付款或重复支付配送收入。
|
|
|
- **SC-010** 新批次对仅转账门店明确提示,对伪造payType=6的创建/换方式请求拒绝;提交前全店检查,不留下部分已创建可支付子单。原单店转账下单、商家核款、现有查询及历史订单回归不受影响,不改变商家配置。
|
|
|
@@ -252,11 +259,15 @@
|
|
|
- **SC-023** 14:00创建、默认发起/到付确认截止14:15及最终确认截止14:20;14:14由服务端记录并实际发起、14:17真实付款并核实且其余成员合法就绪可生效。14:16新发起/重试/切换方式/确认到付拒绝;仅前端声称14:14已发起、伪造时间、只有请求或认证成功均不能当作实收就绪。最终截止仍未知则取消并持续核查迟到实收退款。验证缓冲配置5改8只影响新批次、非法回退5、回调/查询/扫描竞争、重复核销、LINE分阶段及非多店无新增期限。
|
|
|
|
|
|
- **SC-024** A已付/B未付或未选不推履约新单且不可抢,全部合法就绪即时开放一次、预约未到不推。重复回调/查询/到付不重复事件,事务回滚不发送;失败可重试、取消后不复活,单笔送达通知不等其他单。
|
|
|
-- **SC-025** 旧配置提前60分钟、预约18:00–18:30时17:00前不开放、17:00后原普通合法平台配送预约可开放;新批次未生效仍不开放,随后生效才开放。停机跨时点后补扫,重复扫描不重复开放/生成通知,取消/接单竞争不复活;普通单不套批次15分钟条件,自取/自配送不纳入,新语义/最迟接单/自动取消不视为已实现。
|
|
|
+- **SC-025** 旧配置提前60分钟、预约18:00–18:30时17:00前不开放、17:00后原普通合法平台配送预约可开放;新批次未生效仍不开放,随后生效才开放。停机跨时点后补扫,重复扫描不重复开放/生成通知,取消/接单竞争不复活;普通单不套批次15分钟条件,自取/自配送不纳入;新预约语义/倒推最迟接单不纳入本轮,037接入按SC-030验证。
|
|
|
- **SC-026** 新批次未选、A已付/B未付、混合到付、Apple Pay未付及缓冲核实中可查进度并恢复合法结算;批次未就绪时已付子单不能误标可履约,到付不标实收,生效后逐单普通进度不被组覆盖;旧非多店分类回归不变。
|
|
|
- **SC-027** 篡改amount/freight/foodAmount、跨店商品/规格、非法数量不能改变收费;提交报价差异拒绝/重报价而非仅警告。服务端快照与渠道/退款/到付/账单一致,创建后改价仍按旧快照,原单店算价不改。
|
|
|
- **SC-028** 未生效整批取消返对应券、生效取消C只返C券;重复取消/退款/扫描只返一次,仍有效可用、过期不续期。并发创建同一券不能重复核销,旧取消回调不释放新单所用券;返券不伪造退款成功,普通单券规则不改。
|
|
|
- **SC-029** 用户A传B父单号/子单ID/组ID或伪造关联/标识,不能看B详情/进度或支付/取消,失败无状态/款项/返券副作用;本人合法查询正常,商家/骑手仅现有授权范围,不因关联组暴露其他敏感数据。
|
|
|
+- **SC-030** A 先付款而 B 未就绪时不启动无人接单计时;整批生效并实际开放后按 037 阈值检查。预约取生效/开放/预约开始的最晚值,部分取消不续时;超时取消与抢组竞争仅一方成功,超时只退各笔实收,不重复退款/返券。普通独立单 037 回归不变。
|
|
|
+- **SC-031** 14:00 建批、预约 14:05–14:15、14:18 才核实齐付款时不得激活或开放,已收款退款;等于预约结束也拒绝,未知款后续核查。预约仍有效的批次正常激活;已生效的履约任务不因时段结束被此检查取消,重启扫描补处理且不复活。
|
|
|
+- **SC-032** 修改/删除地址簿记录不改变已建批地址及坐标;直接请求旧单笔改址入口不能改变任何成员。未生效取消后新报价可使用新地址,已承接组仍拒绝用户取消;逐店同地址及收费快照一致。
|
|
|
+- **SC-033** 存在未接五店组时将最大店数 5 降为 3 保存失败且版本/原配置不变;冲突组处理完后保存成功,已接五店组继续履约。并发建组/取消/接组/配置保存不留下超过新上限而被卡住的未接组,取消成员后的有效店数正确参与检查。
|
|
|
|
|
|
## 待讨论事项
|
|
|
|