Skip to content

Commit 13596ed

Browse files
committed
refactor: streamline auth_resource method for improved readability and maintainability
1 parent e7a3090 commit 13596ed

File tree

1 file changed

+21
-23
lines changed

1 file changed

+21
-23
lines changed

apps/system_manage/serializers/user_resource_permission.py

Lines changed: 21 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -104,29 +104,27 @@ def get_queryset(self):
104104

105105
def auth_resource(self, resource_id: str):
106106
self.is_valid(raise_exception=True)
107-
workspace_manage = is_workspace_manage(self.data.get('user_id'), self.data.get('workspace_id'))
108-
if not workspace_manage:
109-
auth_target_type = self.data.get('auth_target_type')
110-
workspace_id = self.data.get('workspace_id')
111-
user_id = self.data.get('user_id')
112-
wurp = QuerySet(WorkspaceUserResourcePermission).filter(auth_target_type=auth_target_type,
113-
workspace_id=workspace_id).first()
114-
auth_type = wurp.auth_type if wurp else ResourceAuthType.RESOURCE_PERMISSION_GROUP
115-
# 自动授权给创建者
116-
WorkspaceUserResourcePermission(
117-
target=resource_id,
118-
auth_target_type=auth_target_type,
119-
permission_list=[ResourcePermission.VIEW,
120-
ResourcePermission.MANAGE] if auth_type == ResourceAuthType.RESOURCE_PERMISSION_GROUP else [
121-
ResourcePermissionRole.ROLE],
122-
workspace_id=workspace_id,
123-
user_id=user_id,
124-
auth_type=auth_type
125-
).save()
126-
# 刷新缓存
127-
version = Cache_Version.PERMISSION_LIST.get_version()
128-
key = Cache_Version.PERMISSION_LIST.get_key(user_id=user_id)
129-
cache.delete(key, version=version)
107+
auth_target_type = self.data.get('auth_target_type')
108+
workspace_id = self.data.get('workspace_id')
109+
user_id = self.data.get('user_id')
110+
wurp = QuerySet(WorkspaceUserResourcePermission).filter(auth_target_type=auth_target_type,
111+
workspace_id=workspace_id).first()
112+
auth_type = wurp.auth_type if wurp else ResourceAuthType.RESOURCE_PERMISSION_GROUP
113+
# 自动授权给创建者
114+
WorkspaceUserResourcePermission(
115+
target=resource_id,
116+
auth_target_type=auth_target_type,
117+
permission_list=[ResourcePermission.VIEW,
118+
ResourcePermission.MANAGE] if auth_type == ResourceAuthType.RESOURCE_PERMISSION_GROUP else [
119+
ResourcePermissionRole.ROLE],
120+
workspace_id=workspace_id,
121+
user_id=user_id,
122+
auth_type=auth_type
123+
).save()
124+
# 刷新缓存
125+
version = Cache_Version.PERMISSION_LIST.get_version()
126+
key = Cache_Version.PERMISSION_LIST.get_key(user_id=user_id)
127+
cache.delete(key, version=version)
130128
return True
131129

132130
def list(self, user, with_valid=True):

0 commit comments

Comments
 (0)