饭卡小程序前台接口文档

状态码(state_code)解释

状态码 解释
200 表示请求成功 一切正常
301 重定向,跳转到新的URL
400 请求出现语法错误
401 验证失败
403 资源不可用(没有权限)
404 无法找到指定位置的资源。
405 请求方法(GET、POST、HEAD、Delete、PUT、TRACE等)对指定的资源不适用。
500 服务器遇到了意料不到的情况,不能完成客户的请求。
501 服务器不支持实现请求所需要的功能。

登陆

获取用户信息,并传给数据库;
简单流程如下图:

饭卡小程序前台接口文档_第1张图片
登陆流程

前台通过小程序接口获取 code,将获取到的 code发送到后台,后台通过 appid+appsecret+code发送给微信服务器以获取 session_keyopenid

首页

 url :XXX.com/index.php/home/Index/index

获取用户地理位置,通过wx.getLocation(OBJECT)方法。

OBJECT参数说明:

参数 类型 必填 说明
type String 默认为"wgs84"返回gps坐标,"gcj02"返回可用于wx.openLocation的坐标
success Function 接口调用成功的回调函数,返回内容详见返回参数说明。
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数说明:

参数 说明
latitude 纬度,浮点数,范围为-90~90,负数表示南纬
longitude 经度,浮点数,范围为-180~180,负数表示西经
speed 速度,浮点数,单位m/s
accuracy 位置的精确度
altitude 高度,单位 m
verticalAccuracy 垂直精度,单位 m(Android 无法获取,返回 0)
horizontalAccuracy 水平精度,单位 m

示例代码:

wx.getLocation({
    type: 'wgs84',
    success: function (res) {
        var latitude = res.latitude
        var longitude = res.longitude
        var speed = res.speed
        var accuracy = res.accuracy
    }
})

前台将纬度(latitude),经度(longitude)数据传给后台(POST),后台根据经纬度计算距离并排序商戶,将数据传给前台,并将用户基本资料传给前台.前台显示会员卡号,商家列表等信息。
OBJECT参数说明:

参数 说明
latitude 纬度,浮点数,范围为-90~90,负数表示南纬
longitude 经度,浮点数,范围为-180~180,负数表示西经

success返回参数说明:

参数 说明
state_code 状态码
admin_name 商户id
merchant_name 商户名称
merchant_images 商户头像
telephone 商户电话(预定使用)
user_spend 人均消费价格
dish_list 赠送菜品
price 菜品价格
rule 赠送规则
merchant_latitude 商户纬度
merchant_longitude 商户经度
long 用户当前与商家距离
tel 用户电话
vip_card 会员卡号
vip_start_time 会员开始时间
vip_end_time 会员结束时间
返回json示例:
{"state_code":"200","user_info":{"id":"1","openid":"121","tel":null,"vip_start_time":"2017-08-07","vip_end_time":"2017-10-07","vip_card":null},"merchant_list":{"2":{"id":"3","merchant_name":null,"merchant_images":null,"user_spend":null,"telephone":null,"dish_list":null,"merchant_latitude":"34.2619515371","merchant_longitude":"108.9546080475","merchant_area":null,"merchant_address":null,"price":null,"rule":"\u706b\u9505\u6492\u65e6","long":0.17090961396683},"0":{"id":"1","merchant_name":"\u706b\u9505","merchant_images":null,"user_spend":null,"telephone":null,"dish_list":null,"merchant_latitude":"34.2466456176","merchant_longitude":"108.9975285530","merchant_area":null,"merchant_address":null,"price":null,"rule":null,"long":4.1337967241545},"1":{"id":"2","merchant_name":null,"merchant_images":null,"user_spend":null,"telephone":null,"dish_list":null,"merchant_latitude":"34.2219515371","merchant_longitude":"108.9025152151","merchant_area":null,"merchant_address":null,"price":null,"rule":null,"long":6.6433857961773}}}

搜索

用户在搜索框内输入搜索内容,前台将内容传给后台进行处理
OBJECT参数说明:

参数 说明
search_text 用户输入内容

success返回参数说明:
同上

{"state_code":"200","$merchant_list":[{"id":"1","merchant_name":"\u706b\u9505","merchant_images":null,"user_spend":null,"merchant_area":null,"merchant_address":null,"price":null,"rule":null},{"id":"3","merchant_name":null,"merchant_images":null,"user_spend":null,"merchant_area":null,"merchant_address":null,"price":null,"rule":"\u706b\u9505\u6492\u65e6"}]}

商户详情页

url:XXX.com/index.php/home/merchant/merchant_info?merchant_id=XXX

OBJECT参数说明:

参数 说明
merchant_id 店铺id

success返回参数说明:

参数 说明
state_code 状态码
merchant_name 商户名称
merchant_banner banner轮播图
merchant_address 商户地址
opening_time_begin 开始营业时间
opening_time_end 结束营业时间
telephone 商户电话(预定使用)
user_spend 人均消费价格
dish_list 赠送菜品
price 菜品价格
rule 赠送规则
merchant_intro 商户介绍
json示例:
{"state_code":"200","merchant_info":{"merchant_name":null,"merchant_banner":null,"merchant_address":null,"opening_time_begin":null,"opening_time_end":null,"telephone":null,"user_spend":null,"dish_list":null,"price":null,"rule":null,"merchant_intro":null}}

享用项目

用户在商家消费之后享受赠送菜品服务之后在工作人员的见证下进行核销操作。
在首页点击享用按钮,弹出核销窗口,点击和进行核销。

url:XXX.com/index.php/home/consume/index?merchant_id=XXX

OBJECT参数说明:

参数 说明
merchant_id 商户id

success返回参数说明:

参数 说明
state_code 状态码
200 表示核销成功,弹出成功的提示
401 表示该用户今日在本店已经核销过两次,达到次数上限
403 用户会员已经到期或者未开通,跳到首页让用户选择购买

会员购买

url:XXX.com/index.php/home/vip/open_vip?card_id=XXX

OBJECT参数说明:

参数 说明
card_id 会员卡类型(1:月卡,2:季度卡,3:年卡)

会员需要先绑定手机号码,购买前先判断是否绑定,绑定完成之后才让购买。

手机号绑定

前台提供一个输入框,用户将手机号输入之后点击获取验证码,前台将手机号码POST给后台接口。
用户输入验证码后,再将用户输入的验证码传给后台处理

url:XXX.com/index.php/home/consume/bind_tel

OBJECT参数说明:

参数 说明
telephone 手机号码

success返回参数说明:

参数 说明
state_code 短信发送状态(200:短信发送成功;500:短信发送失败;401手机号码格式错误)

当用户接收到验证短信时并输入提交时,前台将验证码POST给后台。

url:XXX.com/index.php/home/consume/validate_code

OBJECT参数说明:

参数 说明
vCode 验证码
参数 说明
state_code 验证状态(200:验证成功;500:验证失败)

success返回参数说明:

参数 说明
state_code 验证状态(200:验证成功;500:验证失败)

你可能感兴趣的:(饭卡小程序前台接口文档)