bind-service.js 2.35 KB
/**
 * 注册数据接口
 *
 * @author JiangFeng<jeff.jiang@yoho.cn>
 * @date 2016/06/21
 */

'use strict';

const FROM = require('../../../config/from');
const PAGE = 'H5';

class BindServiceModel extends global.yoho.BaseModel {
    constructor(ctx) {
        super(ctx);
    }

    bindCheck(mobile, openId, sourceType, area) {
        return this.get({
            data: {
                method: 'app.passport.signCheck',
                area: area,
                mobile: mobile,
                open_id: openId,
                source_type: sourceType
            }
        });
    }

    sendBindMsg(params) {
        return this.get({
            data: {
                method: 'app.passport.smsbind',
                mobile: params.mobile,
                area: params.area,
                udid: params.udid,
                degrees: params.captcha,
                fromPage: PAGE
            }
        });
    }

    checkBindCode(area, mobile, code) {
        return this.get({data: {
            method: 'app.register.validRegCode',
            mobile: mobile,
            area: area,
            code: code
        }});
    }

    bindMobile(openId, sourceType, mobile, area, password, from, nickname) {
        let params = {
            method: 'app.passport.bind',
            mobile: mobile,
            open_id: openId,
            source_type: sourceType,
            area: area,
            business_line: FROM[from].business_line
        };

        if (password) {
            params.password = password;
        }

        if (nickname) {
            params.nickname = nickname;
        }

        return this.get({ data: params });
    }

    relateMobile(openId, sourceType, mobile, area) {
        return this.get({data: {
            method: 'app.passport.relatedMobile',
            mobile: mobile,
            openId: openId,
            source_type: sourceType,
            area: area
        }});
    }

    changeCheck(mobile, area) {
        return this.get({data: {
            method: 'app.passport.changeCheck',
            mobile: mobile,
            area: area
        }});
    }

    changeMobile(uid, mobile, area, code) {
        return this.get({data: {
            method: 'app.passport.changeMobile',
            mobile: mobile,
            uid: uid,
            code: code,
            area: area
        }});
    }
}

module.exports = BindServiceModel;