def post(self): try: telephone = self.get_argument('telephone') verify_type = int(self.get_argument('verify_type')) except MissingArgumentError: return self.error(MISSING_PARAMS) if not verify_telephone(telephone): return self.error(PHONE_NOT_RIGHT) if verify_type == REGISTER_VERIFY_CODE_TYPE and User.exists_user_by_telephone(telephone): return self.error(EXIST_USER_TELEPHONE) verify_code = Verify.gen_verify_code() try: Verify.add_verify_code(verify_type, telephone, verify_code) if not settings.DEBUG: send_register_verify_code_sms.delay(telephone, verify_code) return self.render({ 'status': 0, 'data': { 'telephone': telephone, 'verify_code': str(verify_code), } }) except Exception as e: logger.warning(u'获取注册验证码失败。Error:[%s]' % e) return self.error(SYSTEM_ERROR)
def post(self, *args, **kwargs): try: telephone = self.get_argument('telephone') password = self.get_argument('password') verify_code = self.get_argument('verify_code') except MissingArgumentError: return self.error(MISSING_PARAMS) if not verify_telephone(telephone): return self.error(PHONE_NOT_RIGHT) # 检测是否有相同手机号的用户 exist_user_telephone = User.exists_user_by_telephone(telephone) if exist_user_telephone: return self.error(EXIST_USER_TELEPHONE) # 检测验证码是否正确 if str(verify_code) != str(Verify.get_verify_code(REGISTER_VERIFY_CODE_TYPE, telephone)): return self.error(MISMATCHED_VERIFY_CODE) password = encrypt_password(password) try: user_id = User.add(telephone, password) user_amount = User.get_user_count() account = Account.add(user_id, 0.00) # UserIntegral.add(user_id, 0) # if user_amount <= 500: # account.add_balance(10.00) # PresentedBalance.add(user_id, 10.00, PRESENT_BEFORE_500) # # if int(telephone) in NEICE_TELEPHONES: # account.add_balance(10.00) # PresentedBalance.add(user_id, 10.00, PRESENT_NEICE) access_token = gen_access_token(user_id) UserAuth.add(user_id, access_token) user = User.get(user_id) rst = { 'status': 0, 'data': { 'user': user.jsonify(), 'access_token': access_token, }, } return self.render(rst) except Exception as e: logger.error(u'添加用户失败。Error:%s', e) return self.error(SYSTEM_ERROR)