def SaveRolePermissionItemScope(request): try: targetRoleId = request.POST['targetRoleId'] except: targetRoleId = None try: permissionItemIds = request.POST['permissionItemIds'] except: permissionItemIds = None response = HttpResponse() if not targetRoleId: response.content = json.dumps({'Success': True, 'Data': '-1', 'Message': '角色主键为空!'}) return response try: tmpScopeIds = RolePermission.GetScopePermissionItemIdsByRoleId(None, targetRoleId, "Resource.ManagePermission") if not permissionItemIds: if tmpScopeIds and len(tmpScopeIds) > 0: RolePermission.RevokeRolePermissionItemScope(None, targetRoleId, "Resource.ManagePermission", tmpScopeIds) else: #revokeIds = list(set(tmpRoleIds) ^ set(str(roleIds).split(','))) revokeIds = [] for r in tmpScopeIds: if r not in permissionItemIds: revokeIds.append(r) #grantIds = list(set(str(roleIds).split(',')) ^ set(tmpRoleIds)) grantIds = [] for g in str(permissionItemIds).split(','): if g not in tmpScopeIds: grantIds.append(g) if len(grantIds) > 0: RolePermission.GrantRolePermissionItemScope(CommonUtils.Current(response, request), targetRoleId, "Resource.ManagePermission", grantIds) if len(revokeIds) > 0: RolePermission.RevokeRolePermissionItemScope(None, targetRoleId, "Resource.ManagePermission", revokeIds) response.content = json.dumps({'Success': True, 'Data': '1', 'Message': "授权成功!"}) return response except Exception as e: print(e) response.content = json.dumps({'Success': False, 'Data': '-2', 'Message': '操作失败!'}) return response
def GetScopePermissionItemIdsByRoleId(request): try: roleId = request.POST['roleId'] except: roleId = None if roleId: scopeIds = RolePermission.GetScopePermissionItemIdsByRoleId(None, roleId, "Resource.ManagePermission") returnValue = '[' for id in scopeIds: returnValue = returnValue + '"' + id + '",' returnValue = returnValue.strip(',') returnValue = returnValue + ']' response = HttpResponse() response.content = returnValue return response else: response = HttpResponse() response.content = '[]' return response