开源项目地址:gitee.com/yaozy717/dd…
一、第三方接入介绍
- 本系统支持第三方系统发单到本系统。如某餐饮系统,订餐服务需要大量的派送服务,即可将派送服务接入本系统。
二、接入流程
1.添加第三方应用
- 应用名称:用于识别接入的应用
- api_key:系统自动生成-将作为第三方应用唯一识别
- 设置ip白名单:只有白名单内的ip可以访问此接口,设置为“*”,表示所有ip均可访问
- 回调地址:订单状态改变时会将,会将状态信息发送到第三方应用
2.查询配送价格
https://x.x.x.x/opentp/v1/cost/calculation
请求参数
参数属性 |
类型 |
必填 |
说明 |
app_key |
string |
是 |
应用的密钥 |
startAddress |
string |
是 |
起点地址,是一个object,请求时,将它转成string类型 |
endAddress |
string |
是 |
终点地址,是一个object,请求时,将它转成string类型 |
service_type |
string |
是 |
服务类型,仅支持“帮我送”,“帮我去”,“代驾” |
weight |
int |
是 |
产品的重量(单位:g) |
startAddress与endAddress参数表
属性 |
类型 |
必填 |
说明 |
formatted_addresse |
string |
是 |
经格式化后的地址 |
province |
string |
是 |
省份 |
city |
string |
是 |
城市 |
district |
string |
是 |
区/县 |
latitude |
float |
是 |
纬度(gcj02 ) |
longitude |
float |
是 |
经度(gcj02 ) |
name |
string |
是 |
联系人姓名 |
phone |
string |
是 |
手机号 |
street_number |
string |
否 |
街区号 |
address_detail |
string |
否 |
详细地址 |
返回值说明
属性 |
类型 |
说明 |
errno |
int |
等于0说明请求成功,大于1000,请查看请求失败原因 |
totalPrice |
string |
服务总费用 |
weightPrice |
float |
重量产生的费用 |
start.startDistance |
int |
起送价距离 |
start.startPrice |
float |
起送价格 |
excced.exccedDistance |
int |
超出起送距离部分的距离 |
excced.exccedPrice |
float |
超出起送距离部分的价格 |
请求示例
$.ajax({
url: 'https://x.x.x.x/opentp/v1/cost/calculation',
type: 'POST',
data:{
app_key: '61e080ab-3830-4316-955c-dd7eec82b1',
startAddress: '{"street_number":"千秋东街1号","formatted_addresse":"德清县人民政府(云岫北路西)","province":"浙江省","city":"湖州市","district":"德清县","phone":"18858589595","latitude":30.54269,"longitude":119.97754}',
endAddress: '{"formatted_addresse":"D Iinx酒吧","province":"浙江省","city":"湖州市","district":"德清县","latitude":30.539268,"longitude":119.967952,"phone":"17758585959","name":"qwe","street_number":"余英坊7幢1-10号1楼","address_detail":""}',
service_type: '帮我送',
weight: 500
},
success(res){
console.log(res)
},
fail(res){
console.log(res)
}
})
3.发布一个服务订单
https://x.x.x.x/opentp/v1/order/place
请求参数与上面一模一样
返回值说明
属性 |
类型 |
说明 |
errno |
int |
等于0说明请求成功,大于1000,请查看请求失败原因 |
data.order_id |
int |
本系统订单的ID |
data.out_trade_no |
string |
通用订单编号 |
data.totalFee |
float |
服务价格 |