# 1003 同城配送服务动态

## content_json 定义

| 参数 | 是否必填 | 类型 | 说明 | 格式要求 |
| -------- | -------- | -------- | -------- | -------- |
| cur_status | 是 | int32 | 当前状态id |  |
| wxa_path_query | 是 | string | 卡片点击跳转路径与query |  |
| product_count | 参考状态要求 | uint32 | 商品数量 |  |
| product_list | 参考状态要求 | object | 商品信息 |  |
| arrival_time | 参考状态要求 | uint32 | 预计送达时间（cur_status为3或4或5或6或7时）、送达时间（cur_status为8时） | 秒级时间戳，展示为HH:mm格式 |
| distance_to_store | 参考状态要求 | uint32 | 骑手距取货点距离 | 单位为m |
| distance_to_destination | 参考状态要求 | uint32 | 骑手距离收货地距离 | 单位为m |

**product_list 定义**

| 参数 | 是否必填 | 类型 | 说明 | 格式要求 |
| -------- | -------- | -------- | -------- | -------- |
| info_list | 是 | array<object> | 商品信息 |  |

**info_list 定义**

| 参数 | 是否必填 | 类型 | 说明 | 格式要求 |
| -------- | -------- | -------- | -------- | -------- |
| product_img | 是 | string | 商品图片 |  |
| product_name | 是 | string | 商品名称 |  |
| product_path_query | 是 | string | 商品路径与query |  |
| count | 否 | uint32 | 单品数量，默认为1 |  |
| single_price | 否 | uint32 | 商品单价 | 单位为分 |

## cur_status 传入状态 id 的含义，与不同状态 id 下的字段要求

| id | 激活时是否可为此状态 | 可变更自上一状态* | 状态描述 | 此状态下必填字段 | 此状态下选填字段 | content_json示例 |
| -------- | -------- | -------- | -------- | -------- | -------- | -------- |
| 1 | 是 | / | 用户已支付 | product_count
product_list
wxa_path_query | | `"{\"cur_status\":1,\"product_count\": 1,\"product_list\":{\"info_list\":[{\"product_img\":\"https://res.wx.qq.com/op_res/DiSd8fVjXuHr5K9U73oRr-0imv0GklZrlRRj_mZmbnO0jT349XT-qIzT_DmjQsDLSO3xZbUTbOP--HA_BosOoA\",\"product_name\":\"momo\",\"product_path_query\":\"pages/index/index\"}]},\"wxa_path_query\":\"pages/index/index\"}"` |
| 2 | 是 | 1, 2 | 备货中 | product_count
product_list
wxa_path_query | arrival_time | `"{\"cur_status\":2,\"product_count\": 1,\"product_list\":{\"info_list\":[{\"product_img\":\"https://res.wx.qq.com/op_res/DiSd8fVjXuHr5K9U73oRr-0imv0GklZrlRRj_mZmbnO0jT349XT-qIzT_DmjQsDLSO3xZbUTbOP--HA_BosOoA\",\"product_name\":\"momo\",\"product_path_query\":\"pages/index/index\"}]},\"arrival_time\": 1696157643,\"wxa_path_query\":\"pages/index/index\"}"` |
| 3 | 否 | 1, 2, 3 | 待骑手接单 | wxa_path_query | arrival_time | `"{\"cur_status\":3,\"arrival_time\": 1696157643,\"wxa_path_query\":\"pages/index/index\"}"` |
| 4 | 否 | 1, 2, 3, 4, 7 | 骑手前往取货点中 | wxa_path_query | arrival_time
distance_to_store | `"{\"cur_status\":4,\"arrival_time\": 1696157643,\"distance_to_store\": 1500,\"wxa_path_query\":\"pages/index/index\"}"` |
| 5 | 否 | 1, 2, 3, 4, 5, 7 | 骑手已到取货点 | wxa_path_query | arrival_time | `"{\"cur_status\":5,\"arrival_time\": 1696157643,\"wxa_path_query\":\"pages/index/index\"}"` |
| 6 | 否 | 1, 2, 3, 4, 5, 6, 7 | 骑手送货中 | wxa_path_query | arrival_time
distance_to_destination | `"{\"cur_status\":6,\"arrival_time\": 1696157643,\"distance_to_destination\": 1500,\"wxa_path_query\":\"pages/index/index\"}"` |
| 7 | 否 | 4, 5, 6, 7 | 配送单取消，重新等待配送 | wxa_path_query | arrival_time | `"{\"cur_status\":7,\"arrival_time\": 1696157643,\"wxa_path_query\":\"pages/index/index\"}"` |
| 8 | 否 | 6 | 商品已送达 | wxa_path_query | arrival_time | `"{\"cur_status\":8,\"arrival_time\": 1696157643,\"wxa_path_query\":\"pages/index/index\"}"` |
| 9 | 否 | 1, 2, 3, 4, 5, 6, 7, 8 | 订单已完成 | wxa_path_query | | `"{\"cur_status\":9,\"wxa_path_query\":\"pages/index/index\"}"` |
| 10 | 否 | 1, 2, 3, 4, 5, 6, 7, 8 | 订单已取消 | wxa_path_query | | `"{\"cur_status\":10,\"wxa_path_query\":\"pages/index/index\"}"` |

**「可变更自上一状态」说明**

1. 此列中的数字表示当前状态只能由这些状态变更（激活时无此要求）
2. 需要注意的是当前状态变更为当前状态，也要求状态id在此列中：如当前为状态为1，只有当1也在此列中，才允许下一次更新时状态传入1
3. 在此列中不存在的状态id，意为结束态，后续不再可更新服务状态
## ext_json 定义

| 参数 | 是否必填 | 类型 | 说明 | 格式要求 |
| -------- | -------- | -------- | -------- | -------- |
| pay_info | 是 | object | 支付信息 |  |
| store_info | 否 | object | 门店信息 |  |
| product_additional_list | 是 | object | 商品附加信息，与product_list排序一一对应 | |

**pay_info 定义**

| 参数 | 是否必填 | 类型 | 说明 | 格式要求 |
| -------- | -------- | -------- | -------- | -------- |
| transaction_id | 是 | string | 微信支付订单号对于合单支付场景，目前仅支持使用传入第一个子单的订单号 | |
| pay_amount | 是 | uint32 | 订单实际支付金额，若订单有优惠，需传入优惠后金额
若为合单支付的第一个子订单，需传入合单支付的总实际支付金额 | 单位为分 |
| pay_time | 是 | uint32 | 支付时间 | 秒级时间戳 |

**store_info 定义**

| 参数 | 是否必填 | 类型 | 说明 | 格式要求 |
| -------- | -------- | -------- | -------- | -------- |
| store_name | 是 | string | 门店名称 |  |
| province | 是 | string | 所在省份/地区 |  |
| city | 是 | string | 所在城市 |  |
| county | 是 | string | 所在区/县 |  |
| store_address | 否 | string | 详细地址 |  |
| store_id | 否 | uint64 | 门店快送id |  如果已接入「[门店快送](https://docs.qq.com/doc/DSFpKY0drdEF3Q3BK)」，以上门店相关信息字段无需传入，可直接传“门店id（store_id）”，如果所有字段都传入，我们优先用门店快送的门店信息。 |

**product_additional_list 定义**

| 参数 | 是否必填 | 类型 | 说明 | 格式要求 |
| -------- | -------- | -------- | -------- | -------- |
| info_list | 是 | array<object> | 商品附加信息 |  |

**info_list 定义**

| 参数 | 是否必填 | 类型 | 说明 | 格式要求 |
| -------- | -------- | -------- | -------- | -------- |
| unit_price | 是 | uint32 | 商品单价 |  |
| number | 是 | uint32 | 商品数量 |  |
