文档
测试

4.计价

POST
api_method:u-order-calculate

调用注意事项

1.货拉拉计价的规则是什么? 答:计价接口返回结果为货拉拉根据车型,公里数计算出来的基础报价 - 下单城市 - 公里数 - 车型(起步价,超里程后区间内每公里价) 2.价格是固定的么? 答:价格是实时浮动的。每个城市,每个车型下,某个时间点价格可能都不一样。请实时进行获取 3.接口返回"车型已变更",应如何处理? 答:以上可能因为“城市版本号变更”,“车型变更”,“计价结果不正确”等可能导致此返回。处理方式如下 - 重新调用“获取城市可选车型信息”接口。获取最新的城市版本号revision - 重新计价

编码

++数据编码:++ Accept:application/json Content-type: application/json ++字符编码:++ utf-8

前端UI界面示例

![image.png](https://cos.easydoc.net/48578360/files/k93rwi46)

系统级请求参数

参数名
类型
描述
必填
api_method
string
接口方法名。请传"u-order-calculate"
必填
api_version
string
接口版本号。请传固定值“1.0”
必填
app_key
string
开发者应用唯一app_key
必填
nonce_str
string
随机数,用户自定义,60s内不可重复使用,用于确保请求不可重复
必填
timestamp
number
unix时间戳(单位:秒),时间戳应为60s内的值,超过60s则超时
必填
signature
string
签名值
必填

应用级请求参数(api_data数据结构)

参数名
类型
描述
必填
city_id
int
下单城市ID,示例:1002
必填
city_info_revision
int
下单城市版本号
必填
order_vehicle_id
int
用户选择的车型ID, 示例:402
必填
addr_info
array
用户添加的地址信息。寄件地址与收件地址都作为数组元素。寄件地址为数据第一个元素
必填
name
string
地址名称, 示例:维也纳国际酒店(深圳北站店)
必填
addr
string
地址详情, 示例:深圳市⻰华区致远中路2号
必填
city_id
number
地址所在城市ID, 示例:1002
必填
city_name
string
地址所在城市名称,示例:深圳
必填
district_name
string
地址所在区(县), 示例:宝安区
必填
house_number
string
楼层及门牌号, 示例:20层2003号房
可选
contact_name
string
联系人
可选
contacts_phone_no
string
联系方式, 示例:136999969966
可选
lat_lon
object
地址经纬度(gcj02坐标系)
必填
lon
double
定位纬度, 示例:114.02309914676592
必填
lat
double
定位经度 示例:22.60961852782125
必填
vehicle_std
array(string)
用户选择的车型附加要求。 示例:["双排座"]
可选
spec_req
array(int)
用户选择的城市额外需求 示例:[2,5]
可选
order_time
long
需用车时间(unix时间戳:秒), 示例:1568895707。默认为当前时间+10分钟。用户如果修改用车时间,只能修改为比“当前时间+10分钟”大
必填

响应参数

参数名
类型
描述
必填
ret
number
返回结果码, 示例:0
必填
msg
string
返回结果描述, 示例:
必填
data
object
数据字典
必填
distance_total
int
总里程数(米), 示例:4854
必填
exceed_distance
int
超里程数(米)
必填
total_price_fen
int
计费总价(分)
必填
calculate_price_info
array
计费明细说明
必填
type
int
价格类型( 1-起步价,2-超 ⾥程价,3-拉拉券,4-额外需求产⽣的费⽤,5-⼩费,6-规格,7-额外 补贴,8-额外费⽤,9-附加费,10-最低消费附加费,11-封顶折 扣,12-保险费⽤,16-等候费
必填
name
string
价格名称
必填
amount_fen
int
计价金额(分)
必填

请求json示例:

```json { "api_method":"u-order-calculate", "api_version":"1.0", "app_key":"*****************", "signature":"*******************", "nonce_str":"8sZD2c7raj", "timestamp":1564022849, "api_data":"{ \"city_id\":1002, \"order_vehicle_id\":402, \"vehicle_std\":[\"双排座\"], \"spec_req\":[2,5], \"city_info_revision\":296, \"order_time\":1568895707, \"addr_info\":[ { \"name\":\"维也纳国际酒店(深圳北站店)\", \"addr\":\"深圳市⻰华区致远中路2号\", \"city_id\":1002, \"city_name\":\"深圳\", \"district_name\":\"宝安区\", \"house_number":\"20层2003号房\", \"contacts_name\":\"刘⽣\", \"contacts_phone_no\":\"136999969966\", \"lat_lon\":{ \"lon\":114.02309914676592, \"lat\":22.609618527821251 } }, { \"name\":\"⻓城开发⾼层公寓\", \"addr\":\"皇岗路5000号\", \"city_id\":1002, \"city_name\":\"深圳\", \"district_name\":\"福⽥区\", \"house_number\":\"\", \"contacts_name\":\"\", \"contacts_phone_no\":\"\", \"lat_lon\":{ \"lon\":114.06548381551384, \"lat\":22.569156830453188 } } ] }" } ```

返回json示例:

```json { "ret":0, "msg":"", "data":{ "distance_total":6856, "exceed_distance":1856, "total_price_fen":6600, "calculate_price_info":[ { "amount_fen":2200, "name":"起步价", "type":1 }, { "amount_fen":330, "name":"超⾥程", "type":9 } ] } } ```

返回状态码说明

|column1|column2|column3| |-|-|-| |30010|城市车型及版本号信息已过期|重新获取城市可选车型信息接口中版本号| |30011|城市未开通|需要重新拉取【货拉拉已开通城市列表】| |31002|下单地址最少2个点,最多10个点|| |31004|经纬度错误||