Пример #1
0
    def doSetPasswd(cls, rpath):
        isReturn, params = AccountCheck.normal_check(rpath)
        if isReturn:
            return params

        # 获取玩家修改密码次数
        userId = params['userId']
        changePwdCount = TyContext.RedisUser.execute(userId, 'HGET', 'user:'******'changePwdCount')
        #         TyContext.ftlog.info(cls.__name__, 'doSetPasswd->changePwdCount=', changePwdCount)
        if changePwdCount == None:
            changePwdCount = 0
        if int(changePwdCount) > 0:
            isReturn, oldpasswd = AccountCheck.check_param_password(rpath, 'oldpasswd')
            if isReturn:
                return oldpasswd
            params['oldpasswd'] = oldpasswd

        isReturn, newpasswd = AccountCheck.check_param_password(rpath, 'newpasswd', isSet=True)
        if isReturn:
            return newpasswd
        params['newpasswd'] = newpasswd

        mo = TyContext.Cls_MsgPack()
        AccountInfo.doSetPasswd(params, mo)
        return mo
Пример #2
0
    def doSetPasswordByVerifyCode(cls, rparams, mo):
        TyContext.ftlog.info(cls.__name__,
                             'doSetPasswordByVerifyCode->rparams=', rparams)
        # appId = rparams['appId']
        # clientId = rparams['clientId']
        # userId = rparams['userId']
        mobile = rparams['mobile']
        vcode = rparams['vcode']

        userId = cls._find_userid_by_mobile(mobile)
        if not userId:
            mo.setResult('code', 2)
            mo.setResult('info', '手机号未绑定')
            return mo

        rparams['userId'] = userId
        rkey = 'mobile:verify:code:' + str(mobile)
        vcodeDb = TyContext.RedisMix.execute('GET', rkey)
        if vcodeDb and int(vcodeDb) == int(vcode):
            TyContext.RedisMix.execute('DEL', rkey)
            AccountInfo.doSetPasswd(rparams, mo, False)
            return mo
        else:
            mo.setResult('code', 1)
            mo.setResult('info', '短信验证码无效,请重新输入或获取验证码')
            return mo