基于thinkjs2.2的用户登录验证,中途传不了数据return this.model('user').checkUsername(username, phone);
发布于 6 年前 作者 wangsenyan 2477 次浏览 来自 问答

有新的手机号注册,但是执行到console.log(‘a’)就不执行return this.model(‘user’).checkUsername(username, phone);小弟实在不懂 getUserByPhone (phone) { return this.model(‘users’).where({phone: phone}).find(); }; checkUsername (username, phone) { return this.model(‘users’).where({username: username, phone: [’!=’, phone]}).count(‘username’); };

if (isEmpty(errMsg)) {
          return this.model('user').getUserByPhone(phone).then(function (data) {
            if (!isEmpty(data) && data.status > 0) {
              return Promise.reject({
                code: -1,
                info: '手机号已被注册',
                data: {}
              });
            }else{
              **console.log('a');**
              return this.model('user').checkUsername(username, phone);
            }
          }).then(function (data) {
             console.log('b');
              if (data <= 0) {
                return this.model('user').ckeckVerificationOnReg(phone);
              } else {
                return Promise.reject({
                  code: -2,
                  info: '用户名已被使用',
                  data: {}
                });
              }
            }).then(function (data) {
              console.log('c');
              if (isEmpty(data)) {
                return Promise.reject({
                  code: -3,
                  info: '验证码错误',
                  data: {}
                });
              } else {
                data.verification_time = moment().unix();
                if (data.verification_code == verification && data.verification_time >= moment().unix() - 600) {
                  return Promise.resolve();
                }  else if (data.verification_time < moment().unix() - 600) {
                  return Promise.reject({
                    code: -4,
                    info: '验证码失效,请重新发送',
                    data: {}
                  });
                } else {
                  return Promise.reject({
                    code: -3,
                    info: '验证码错误',
                    data: {}
                  });
                }
              }

            }).then(function () {
              var randomCode = parseInt(Math.random() * 1000);
              randomCode >= 1000 ? 999 : randomCode;
              var md5Password = md5(md5(password) + randomCode);
              return this.model('user').updateUserinfoOnReg(phone, username, md5Password, randomCode);
            }).then(function () {
              return this.model('user').getUserByPhone(phone);
            }).then(function (data) {
              return this.model('user').initAccount(data.user_id).then(function (data) {
                //console.log(data);
                self.session('userInfo', {
                  user_id: data.user_id,
                  username: data.username,
                  phone: data.phone,
                  role: data.role,
                  monthly: data.monthly
                });
              })
            }).then(function(){
              self.json({
                code: 1,
                info: '注册成功',
                data: {
                  returnUrl: returnUrl
                }
              });
            }, function (err) {
              if (typeof(err)==='object'&& err!==null) {
                self.json(err);
              } else {
                self.json({
                  code: 500,
                  info: '服务器繁忙,请稍后再试',
                  data: {}
                });
              }
            })
        }
\n```
回到顶部