文档
测试

4.计价

POST
api_method:u-order-calculate

服务入口

测试环境:https://openapi-stg.huolala.cn/v1 正式环境:https://openapi.huolala.cn/v1

调用注意事项

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
接口方法
必填
api_version
string
接口版本,固定值:1.0
必填
app_key
string
应用唯一app_key
必填
access_token
string
货拉拉账户授权访问令牌
必填
nonce_str
string
随机数,用户自定义,60s内不可重复使用,用于确保请求不可重复
必填
timestamp
number
unix时间戳(单位:秒),时间戳应为60s内的值,超过60s则超时
必填
signature
string
签名值
必填

应用级请求参数

参数名
类型
描述
必填
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
必填

响应参数

参数名
类型
描述
必填
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 { "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|城市未开通|需要重新拉取【货拉拉已开通城市列表】| |31001|所选城市错误,city_id跟第⼀个地址的city_id不符| |31002|下单地址最少2个点,最多10个点|| |31004|经纬度错误||