def change_user_info(request): """ 修改用户信息 :param request: :return: """ result = {} user_id = request.POST.get('user_id') user_name = request.POST.get('user_name') role_id = request.POST.get('role_id') if user_id is not None: try: User.objects.filter(id=user_id).update(username=user_name) user_query = User.objects.filter(username=user_name) if user_query: for user in user_query: if user.groups.all(): user.groups.clear() user_choice_role(user_name, role_id) result['flag'] = "success" return common.ui_message_response(200, '用户信息修改成功', result, status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '服务器内部错误', '服务器内部错误', status.HTTP_500_INTERNAL_SERVER_ERROR)
def role_add_permission(request): """ 角色增加权限 :param request: :return: """ result = {} result['flag'] = 'failure' role_id = request.POST.get('role_id') permission_id_list = request.POST.get('permission_id_list') role_select = Group.objects.filter(id=role_id) for group in role_select: try: if permission_id_list: permission_id_list = json.loads(permission_id_list) if group.permissions.all(): group.permissions.clear() for permission_id in permission_id_list: group.permissions.add(permission_id) result['flag'] = 'success' return common.ui_message_response(200, '角色添加权限成功', result, status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '角色添加权限失败', '角色添加权限失败', status.HTTP_500_INTERNAL_SERVER_ERROR)
def user_change_password(request): """ 修改用户密码 :param request: :return: """ try: result = {} user_data = {} request_data = trans_user_change_password(request) user_data['username'] = request_data['username'] user_data['password'] = request_data['old_password'] print user_data user = auth.authenticate(**user_data) if user is not None: user.set_password(request_data['new_password']) user.save() result['flag'] = "success" return common.ui_message_response(200, '修改密码成功', result, status.HTTP_200_OK) else: return common.ui_message_response(200, '修改密码失败', '原密码输入错误', status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '修改密码失败', '修改密码失败', status.HTTP_500_INTERNAL_SERVER_ERROR)
def get_permission_number(request): """ 获取权限数量 :param request: :return: """ try: result = {} query_result = Permission.objects.all() permission_count = query_result.count() result['permission_count'] = permission_count return common.ui_message_response(200, '查询成功', result, status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '服务器内部错误', '服务器内部错误', status.HTTP_500_INTERNAL_SERVER_ERROR)
def delete_user(request): """ 根据用户id删除用户信息 :param request: :return: """ try: result = {} if 'user_id_list' in request.POST: user_id_list = request.POST['user_id_list'] user_id_list = json.loads(user_id_list) for user_id in user_id_list: user_query = User.objects.filter(id=user_id) for user in user_query: user.delete() result['flag'] = "success" return common.ui_message_response(200, '用户删除成功', result, status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '用户删除失败', '用户删除失败', status.HTTP_500_INTERNAL_SERVER_ERROR)
def user_registration(request): """ 注册用户信息,创建用户名和密码,auth模块不存储用户密码明文而是存储一个Hash值, 比如迭代使用Md5算法. :param request: :return: """ result = {} user_data = trans_user_registration_info(request) if 'password' not in user_data: user_data['password'] = '******' user_name = user_data['username'] role_id = user_data['role_id'] user_data['is_active'] = '1' user_data['is_staff'] = '1' del user_data['role_id'] print user_data if user_data: query_data = User.objects.filter(username=user_name) if query_data.exists(): return common.ui_message_response(200, '用户名已经被占用', "用户名已经被占用", status.HTTP_200_OK) else: user = User.objects.create_user(**user_data) user.save() print user user_select = User.objects.filter(username=user_name) for user in user_select: group_select = Group.objects.filter(id=role_id) try: for group in group_select: user.groups.add(group) result['flag'] = "success" return common.ui_message_response( 200, '用户注册成功', result, status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '用户注册失败', '用户注册失败', status.HTTP_500_INTERNAL_SERVER_ERROR)
def change_role_info(request): """ 修改角色信息 :param request: :return: """ try: role_id = request.POST.get('role_id') role_name = request.POST.get('role_name') if role_name is not None: query_data = Group.objects.filter(name=role_name) if query_data.exists(): return common.ui_message_response(200, '角色名已经被占用', "角色名已经被占用", status.HTTP_200_OK) else: Group.objects.filter(id=role_id).update(name=role_name) return common.ui_message_response(200, '角色信息修改成功', '角色信息修改成功', status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '角色信息修改失败', '角色信息修改失败', status.HTTP_500_INTERNAL_SERVER_ERROR)
def delete_role(request): """ 删除角色 :param request: :return: """ try: result = {} result['flag'] = "failure" role_id_list = request.POST.get('role_id_list') if role_id_list is not None: role_id_list = json.loads(role_id_list) for role_id in role_id_list: user_query = Group.objects.filter(id=role_id) for role in user_query: role.delete() result['flag'] = "success" return common.ui_message_response(200, '角色删除成功', result, status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '角色删除失败', '角色删除失败', status.HTTP_500_INTERNAL_SERVER_ERROR)
def create_role(request): """ 创建角色 :param request: :return: """ try: result = {} role_name = request.POST.get('rolename') if role_name is not None: query_data = Group.objects.filter(username=role_name) if query_data.exists(): return common.ui_message_response(200, '角色名已经被占用', "角色名已经被占用", status.HTTP_200_OK) else: group = Group.objects.create(name=role_name) group.save() result['flag'] = "success" return common.ui_message_response(200, '角色创建成功', result, status.HTTP_200_OK) except Exception: traceback.print_exc() return common.ui_message_response( 500, '角色创建失败', '角色创建失败', status.HTTP_500_INTERNAL_SERVER_ERROR)