def user_register(self, user_info): """ 用户注册 :param user_info: :return: """ email = user_info.get('email') code = user_info.get('code') real_code = redis_client.get(email) # 校验注册码 if code != real_code: raise Exception('register code is incorrect') username = user_info.get('username') user = UserDao.get_user_by_username(username) if user: raise Exception('user has existed') salt = ''.join(str(uuid.uuid4()).split('-'))[:4] password = hashlib.md5(user_info.get('password') + salt).hexdigest() user = User.create(username, password, salt) try: UserDao.insert(user) # 邮箱绑定到用户 email = Email.create(user.id, email) EmailDao.insert(email) db.session.commit() except Exception as e: db.session.rollback() FaceAuthUtils.save_exception(traceback.format_exc()) raise Exception(e.message)
def user_login(self, username, password): if not username or not password: raise Exception('username or password is empty') user = UserDao.get_user_by_username(username) if not user: raise Exception('user is not exist') if user.password != password: raise Exception('password is not available') token = self.assign_token(user.id) return token
def user_increase(self, user_id, username): """ 用户变为快递员 """ try: manager_user = UserDao.get_user_by_user_id(user_id) if manager_user.identity_type != User.IdentityType.MANAGER: raise Exception('你没有权限操作') user = UserDao.get_user_by_username(username) if not user: raise Exception('用户不存在') user.identity_type = User.IdentityType.COURIER db.session.commit() except Exception as e: db.session.rollback() raise e
def delete_user(self, user_id, username): """ 删除用户 """ try: manager_user = UserDao.get_user_by_user_id(user_id) if manager_user.identity_type != User.IdentityType.MANAGER: raise Exception('你没有权限操作') user = UserDao.get_user_by_username(username) if not user: raise Exception('用户不存在') user.status = User.Status.ABANDON db.session.commit() except Exception as e: db.session.rollback() raise e
def user_login(self, username, password): """ 用户登陆 :param username: :param password: :return: """ if not username or not password: raise Exception('username or password is empty') user = UserDao.get_user_by_username(username) if not user: raise Exception('user is not exist') if user.password != password: raise Exception('password is not available') # 验证通过,分配token token = self.assign_token(user.id) return token
def user_register(self, user_info): """ 用户注册 :param user_info: :return: """ username = user_info.get('username') user = UserDao.get_user_by_username(username) if user: raise Exception('user has existed') try: user = User() user.username = username user.password = user_info.get('password') user.join_experiments = json.dumps([]) db.session.add(user) db.session.commit() except Exception as e: db.session.rollback() raise Exception(e)
def user_register(self, user_info): """ 用户注册 :param user_info: :return: """ username = user_info.get('username') user = UserDao.get_user_by_username(username) if user: raise Exception('user has existed') try: user = User() user.username = username user.password = user_info.get('password') user.real_name = user_info.get('real_name') user.telephone = user_info.get('telephone') db.session.add(user) db.session.commit() except Exception as e: db.session.rollback() raise Exception(e)