Преглед изворни кода

036 接入文档统一距离字段口径并修正经纬参数说明

6.1 参数表 longitude/latitude 由只用于排序更新为同时驱动 juli 计算;
新增 juli/anchorDistanceMeters/jvli 三字段统一口径表(含义、位置、前提);
6.2 角标补参数说明;与 6.3 组详情坐标参数说明对齐。
qmj пре 2 дана
родитељ
комит
b9e8035c47
1 измењених фајлова са 13 додато и 5 уклоњено
  1. 13 5
      specs/036-multi-store-checkout/frontend-app-integration.md

+ 13 - 5
specs/036-multi-store-checkout/frontend-app-integration.md

@@ -411,14 +411,20 @@ GET /system/multiStoreCheckout/rider/tasks?page=1&size=10&tab=newTask&longitude=
 |---|---:|---|
 | `page` / `size` | 否 | 默认 1/10,size 上限 50 |
 | `tab` | 否 | 默认 `newTask`,取值见 3.6 |
-| `longitude` / `latitude` | 否 | 骑手坐标。**只用于普通单排序兼容**,不能替代服务端位置;待抢组资格以服务端最近位置与首店距离为准 |
+| `longitude` / `latitude` | 否 | 骑手坐标:计算 `juli` 距离(列表与组详情同口径)并用于普通单排序。**不能替代服务端位置**:待抢组资格仍以服务端最近上报位置与首店距离判定,二者须同时传或同时不传 |
 
 响应 `data` 为分页结构,`records[]` 中 `GROUP` 卡一张 = 一组(角标与列表同口径,组只计一次)。
 普通单卡与组卡 `members[]` 均附带与旧骑手列表逐单一致的信息:`legacyOrder`(订单全量快照)、
-`store`(门店对象)、`user`(用户对象)、`juli`(骑手定位到订单坐标的直线距离,公里两位小数;
-未传定位时为 null,组卡另有服务端口径的 `anchorDistanceMeters`);
-`goodsCount`(food 快照件数合计,口径同统一列表:普通单卡为本单件数,批次/组卡为有效成员合计,
-food 缺失或非法为 null)。待抢组只在批次已生效且达到原预约开放时点、组 `openedAt` 已写入后可见;新任务有有效坐标时按首店距离升序,其余按创建时间方向。最后成员就绪并提交后,服务端立即尝试开放即时/已到点批次;若失败,由原分钟任务重试,预约未到也由该任务到点开放。App 不依赖固定一分钟延迟,付款后可刷新列表,未出现时以服务端状态为准;对外 URL 保持不变。
+`store`(门店对象)、`user`(用户对象)、`goodsCount`(food 快照件数合计,口径同统一列表:
+普通单卡为本单件数,批次/组卡为有效成员合计,food 缺失或非法为 null)。
+
+距离字段统一口径(列表、组详情一致):
+
+| 字段 | 出现位置 | 含义 | 计算前提 |
+|---|---|---|---|
+| `juli` | 普通单卡、组卡 `members[]` | 骑手请求定位 → 订单坐标的直线距离(公里,两位小数) | 请求带 `longitude`/`latitude`,不传为 null |
+| `anchorDistanceMeters` | GROUP 卡 | 服务端最近骑手位置 → 首店取餐坐标(米),待抢排序也用它 | 服务端定位上报;待抢资格要求 5 分钟内新鲜 |
+| `jvli` | 组卡 `members[]` | 门店 → 收货地址的配送路线距离(公里,订单快照) | 无需参数,取自 `legacyOrder.jvli`,可能为空 |待抢组只在批次已生效且达到原预约开放时点、组 `openedAt` 已写入后可见;新任务有有效坐标时按首店距离升序,其余按创建时间方向。最后成员就绪并提交后,服务端立即尝试开放即时/已到点批次;若失败,由原分钟任务重试,预约未到也由该任务到点开放。App 不依赖固定一分钟延迟,付款后可刷新列表,未出现时以服务端状态为准;对外 URL 保持不变。
 
 ### 6.2 各页签任务数(角标)
 
@@ -426,6 +432,8 @@ food 缺失或非法为 null)。待抢组只在批次已生效且达到原预
 GET /system/multiStoreCheckout/rider/taskCount?longitude=121.5&latitude=25.03
 ```
 
+参数同 6.1:`longitude`/`latitude` 可选、成对传入;待抢(newTask)计数按服务端最近位置与距离上限字典判定,不依赖请求坐标。
+
 响应 `data`:
 
 ```json