[关闭]
@ronaldoooo 2015-09-08T03:30:08.000000Z 字数 8005 阅读 3703

接口整理

接口 斑马快跑


1. 说明

1.1 文档目的

该文档目的是引导客户端及服务器进行重构。主要目的是约束服务器api接口。主要进行:

1.2 变量命名约定

注意,此变量命名约定并不一定代表业界规范。已尽量向业界规范靠拢。欢迎提出宝贵意见。
项目 命名方式 示例
接口路由命名 小写字母+减号 /walker/register-device-token
传递参数命名 小写字母+下划线 walker_id

1.3 数据格式定义

1.3.1 成功消息

  1. {
  2. 'success': true,
  3. 'data': {
  4. ...
  5. }
  6. }

1.3.2 失败消息

  1. {
  2. 'success': false,
  3. 'error_code': 4001
  4. }

1.4 数据库重构说明

数据库表说明:

表名 说明
bills 账单
broadcast_records 记录广播订单记录
estimate_bills 预估账单
jobs
failed+jobs
message_verifiles 验证码
monthly_online_times 该月在线时间
order 订单
owner_reviews 司机给用户的评价
owners 用户信息
push_logs 推送信息日志
walk_loaction 货运途中的位置信息
walker_reviews 用户给司机的评价
walker_types 货车种类和信息
walkers 司机信息

2. 司机端接口

2.1 登录注册相关

2.1.1 /walker/register

项目 类型 说明
名称 司机注册
路径 /walker/register
入参 name string 姓名
portrait string 头像
password string 密码
phone string 手机号
verify_id int/string 通过验证码接口获取到的验证码ID
verify_code int/string
recommend_by string 推荐人信息

返回值格式

  1. [
  2. 'success' => true,
  3. 'data' => [
  4. 'walker' => $walker->toArray(),
  5. 'orders' => $orders,
  6. 'time' => $walker->onlineTime()//这里方法跳转失效,请注意,真正调用的方法在Model中
  7. ]
  8. ]

2.1.2 /walker/login

项目 类型 说明
名称 司机登录
路径 /walker/login
入参 phone string 电话
password string 密码
device_type(目前可选) string 设备类型。这个值为android/ios

2.1.3 /walker/update-profile

项目 类型 说明
名称 司机完善自己的资料
路径 /walker/update-profile
入参 walker_id int/string 司机id
token string 身份识别码
name(可选) string 姓名
email(可选) string 电子邮件
identify_card_number(可选) string 身份证号码
phone(可选) string 手机号码
recommend_by(可选) string 推荐人信息
password(可选) string 密码
portrait(可选) string 头像
address(可选) string 住址
country(可选) string 国家
province(可选) string 省份
city(可选) string 城市
car_num(可选) string 车牌号
driver_num(可选) string 驾驶证号
license_num(可选) string 车辆行驶证号
id_card_front(可选) string 身份证正面照片链接
id_card_back(可选) string 身份证背面照片链接
car_pic(可选) string 车辆照片链接
car_num_pic(可选) string 车牌号照片链接
driver_num_pic(可选) string 驾驶证照片链接
license_pic(可选) string 车辆行驶证照片链接

2.1.4 /walker/reset-password

项目 类型 说明
名称 司机修改密码
路径 /walker/reset-password
入参 phone string 电话号码
verify_id int/string 验证码ID
verify_code string 验证码
password string 新密码

2.1.5 /walker/message-verify

项目 类型 说明
名称 司机端获取验证码
路径 /walker/message-verify /provider/getSMScode
入参 phone
返回码 200
返回内容 成功或者失败

2.2 订单相关功能

2.2.1 /walker/report

项目 类型 说明
名称 司机向服务器汇报位置、在线时长
路径 /walker/report
入参 walker_id int
token string
latitude decimal 经度
longitude decimal 纬度
location string 当前地址
time int 当前统计的总在线时长
order_id(根据情况可选) int 订单ID。如果传入该参数表示在订单中,该点将纳入行程统计

2.2.2 /walker/respond-order

项目 类型 说明
名称 司机收到订单后,对订单进行响应
路径 /walker/respond-order /provider/respondrequest
入参 walker_id int
token string
order_id int 订单ID

2.2.3 /walker/track

项目 类型 说明
名称 司机查询运货轨迹
路径 /walker/track
入参 walker_id
token
order_id int 订单ID
返回码 200
返回内容 返回该订单的运货轨迹

2.2.4 /walker/walker-started(@deprecated)

项目 类型 说明
名称 司机出发 因为司机在接单成功后会自动标记为已出发,所以不需要去手动调用此接口
路径 /walker/walker-started
入参 walker_id
token
order_id
latitude
longitude
返回码 200
返回内容 简单返回成功或失败即可

2.2.5 /walker/walker-arrived

项目 类型 说明
名称 司机到达 在发货付费的流程中并不会存在装货时间,所以这个接口不会被调用
路径 /walker/walker-arrived /provider/requestwalkerarrived
status条件 3
入参 walker_id
token
order_id
latitude
longitude
location
返回码 200
返回内容 简单返回成功或者失败即可

2.2.6 /walker/walk-started

项目 类型 说明
名称 司机开始送货
路径 /walker/walk-started /provider/requestwalkstarted
status条件 4
入参 walker_id
token
order_id
latitude decimal 经度
longitude decimal 纬度
location string 当前位置
返回码 200
返回内容 返回开始时间及装货时长

2.2.7 /walker/walk-completed

项目 类型 说明
名称 司机结束送货
路径 /walker/walk-completed
入参 walker_id
token
order_id
latitude decimal 经度
longitude decimal 纬度
location string 当前位置
返回码 200
返回内容 返回账单信息

2.2.8 /walker/order-terminated

项目 类型 说明
名称 司机取消订单
路径 /walker/order-terminated
入参 walker_id
token
order_id
remark string 取消原因

2.3 其他辅助功能

2.3.1 /walker/check-state

项目 类型 说明
名称 司机查询自己当前的上下班状态
路径 /walker/check-state
入参 walker_id
token

2.3.2 /walker/toggle-state

项目 类型 说明
名称 司机切换自己当前的上下班状态
路径 /walker/toggle-state
入参 walker_id
token

2.3.3 /walker/walker-types

项目 类型 说明
名称 查询车辆类型
路径 /walker/walker-types
入参 walker_id
token

2.3.4 /walker/order-detail

项目 类型 说明
名称 司机切换自己当前的上下班状态
路径 /walker/order-detail
入参 walker_id
token
order_id

2.3.5 /walker/history(尚未完成)

项目 类型 说明
名称 获取历史订单记录
路径 /walker/history
入参 walker_id
token
page(可选)
返回码 200
返回内容 返回所有历史订单信息

2.3.6 查询通知列表(尚未完成)

项目 旧的版本 说明
名称 司机查询系统公告
Http请求方式 GET
路径 /walker/get-notification-list /provider/getnotificationlist
入参 walker_id
token
返回码 200
返回内容 返回通知列表,除了通知具体内容都返回。

2.3.7 查询一个具体的通知(尚未完成)

项目 旧的版本 说明
名称 司机查询一个具体的通知
Http请求方式 GET
路径 /walker/get-notification /provider/getnotification
入参 walker_id
token
notification_id
返回码 200
返回内容 返回一个通知的具体内容

3. 乘客端接口

3.1 登录注册相关

3.1.1 /owner/register

项目 类型 说明
名称 货主注册
路径 /owner/register
入参 name string
portrait string
password string
phone string
verify_id int
verify_code string

3.1.2 /owner/login

项目 类型 说明
名称 货主登录
路径 /owner/login
入参 phone string
password string
device_type string

3.1.3 /owner/reset-password

项目 旧的版本 说明
名称 货主修改密码
路径 /owner/reset-password /owner/resetpassword
入参 phone
verify_id
verify_code
password
返回码 200
返回内容 返回成功或失败即可

3.1.4 /owner/update-profile

项目 旧的版本 说明
名称 货主更新资料
路径 /owner/update-profile /owner/updateprofile和/owner/addprofile
入参 walker_id
token
name(可选)
email(可选)
identify_card_number(可选)
phone(可选)
password(可选)
portrait(可选)
address(可选)
country(可选)
province(可选)
city(可选)

3.1.5 /owner/message-verify

项目 旧的版本 说明
名称 货主端获取验证码
路径 /owner/message-verify /owner/getSMScode
入参 phone
token
返回码 200
返回内容 返回一个通知的具体内容

3.4 订单相关功能

3.4.1 /owner/order-created

项目 类型 说明
名称 发单
路径 /owner/order-created
入参 owner_id
token
latitude(starting_latitude)
longitude(starting_longitude)
D_latitude(destination_latitude)
D_longitude(destination_longitude)
type
other_fee
message(remark)
start_place(starting_address)
dest_place(destination_address)
distance
distance_price(distance_cost)
time(walking_time)
time_price(time_cost)
total_price(total)
base_price
payment(payment_mode)

3.4.2 /owner/order-cancelled

项目 类型 说明
名称 发单
路径 /owner/order-created
入参 owner_id
token
order_id
返回码 200
返回内容 返回一个通知的具体内容

3.4.3 /owner/order-terminated

项目 旧的版本 说明
名称 终止订单
路径 /owner/walker-types /application/getwalkertypes
入参 owner_id
token
order_id
返回码 200
返回内容

3.4.5 /owner/nearby-walkers

项目 类型 说明
名称 附近的司机
路径 /owner/nearby-walkers
入参 owner_id
token
latitude
longitude
type(可选)
返回内容 json(['success' => true, 'data' => ['walkers' => $walkers]])

3.4.6 /owner/order-in-progress

项目 类型 说明
名称 查询进行中的订单
路径 order-in-progress
入参 owner_id
token
返回内容 json(['success' => true, 'order' => $order->toArray()]

3.4.7 /owner/history

项目 类型 说明
名称 查询历史订单
路径 history
入参 owner_id
token
返回内容 json(['success' => true, 'data' => [ 'orders' => $orders]])

3.4.8 /owner/track

项目 类型 说明
名称 查询订单轨迹
路径 track
入参 owner_id
token
order_id
返回内容 response()->json(['success' => true, 'data' => ['locations' => $locations]])

3.4.9 /owner/order-detail

项目 类型 说明
名称 查询订单详情
路径 order-detail
入参 owner_id
token
order_id
返回内容 json(['success' => true,'data' => ['order' => $order]])

3.4.10 /owner/set-walker-rating

项目 类型 说明
名称 货主评论
入参 owner_id
token
order_id
rating
comment
返回内容 成功与否

3.4.11 /owner/message-verify

项目 类型 说明
名称 获取验证码
入参 owner_id
token
phone
返回内容 json(['success' => true, 'data' => ['verify_id' => $verify_id]])

3.4.12 /owner/confirmPush

项目 类型 说明
名称 推送确认
未完成

3.5 其它辅助功能

3.5.1 /owner/walker-types

项目 类型 说明
名称 货主查询车辆类型及价格
路径 /owner/walker-types
入参 owner_id
locale_id 这是后来加的参数,暂时可以不传
token

4. 通用接口

5. 错误码汇总

错误码 描述
4001 请求路径错误
4002 请求参数错误
4003 token不匹配
4004 token过期
4005 数据库查询失败
4006 短信验证码发送失败
4007 密码错误
4008 验证码错误
4009 权限错误
4010 操作不符合状态要求,请更新状态

6.status 定义

订单状态order->status

订单状态 status数值
订单刚发出未被处广播 0
订单被广播但未接单 1
订单已经被分派到司机 2
司机出发 3
司机已到达开始装货 4
装货结束开始运输 5
运货完成,但未被支付 6
支付完成 7
订单被货主取消(未被接时就取消) 8
订单被司机中止 9
订单被乘客中止 10

司机状态walker->is_available

状态 status数值
空闲 1
不空闲 0
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注