BindData.php 2.68 KB
<?php

namespace LibModels\Wap\Passport;

use Api\Sign;
use Api\Yohobuy;

/**
 * 绑定手机号 数据模型
 * 
 * @name BindData
 * @package LibModels/Wap/Passport
 * @copyright yoho.inc
 * @version 1.0 (2015-12-14 10:00:00)
 * @author xiaowei
 */
class BindData
{

    /**
     * 绑定前检查
     * @param  string $openId     第三方唯一识别码
     * @param  string $sourceType 登录方式 qq,sina,alipay,wechat
     * @param  string $mobile     绑定输入手机号 
     * @return array              登录返回结果
     */
    public static function bindCheck($mobile, $openId, $sourceType)
    {
        $param = Yohobuy::param();

        $param['method'] = 'app.passport.check';
        $param['mobile'] = $mobile;
        $param['open_id'] = $openId;
        $param['source_type'] = $sourceType;
        $param['client_secret'] = Sign::getSign($param);

        return Yohobuy::get(Yohobuy::API_URL, $param);
    }

    /**
     * 发送、重发送验证码
     * @param  string $mobile   手机号
     * 
     */
    public static function sendBindMsg($area,$mobile)
    {
        $param = Yohobuy::param();

        $param['method'] = 'app.passport.smsbind';
        $param['mobile'] = $mobile;
        $param['area'] = $area;
        $param['client_secret'] = Sign::getSign($param);

        return Yohobuy::get(Yohobuy::API_URL, $param);
    }

    /**
     * 验证验证码是否正确
     * 
     */
    public static function checkBindCode($area,$mobile, $code)
    {
        $param = Yohobuy::param();

        $param['method'] = 'app.register.validRegCode';
        $param['mobile'] = $mobile;
        $param['code'] = $code;
        $param['area'] = $area;
        $param['client_secret'] = Sign::getSign($param);

        return Yohobuy::get(Yohobuy::API_URL, $param);
    }

    /**
     * 第三方绑定手机号
     * @param  string $nickname   姓名
     * @param  string $openId     第三方唯一识别码
     * @param  string $sourceType 登录方式
     * @param  string $mobile     手机号
     * @param  string $area       国别码
     * @param  string $password   密码
     */
    public static function bindMobile($openId, $nickname, $sourceType, $mobile, $area, $password = '')
    {
        $param = Yohobuy::param();

        $param['method'] = 'app.passport.bind';
        $param['mobile'] = $mobile;
        $param['open_id'] = $openId;
        $param['nickname'] = $nickname;
        $param['source_type'] = $sourceType;
        $param['area'] = $area;
        if (!empty($password))
        {
            $param['passport'] = $password;
        }

        $param['client_secret'] = Sign::getSign($param);

        return Yohobuy::get(Yohobuy::API_URL, $param);
    }

}