From 44d92b9dece05d851c2d6586d15badbd8bfea05d Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 12 Jun 2023 19:12:11 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=BF=AE=E6=94=B9=20acl=20user=20revie?= =?UTF-8?q?w?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/orgs/models.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/apps/orgs/models.py b/apps/orgs/models.py index de2b087a3..647c37cb9 100644 --- a/apps/orgs/models.py +++ b/apps/orgs/models.py @@ -9,10 +9,21 @@ logger = get_logger(__name__) class OrgRoleMixin: + ROOT_ID = '00000000-0000-0000-0000-000000000000' + ROOT_NAME = _('GLOBAL') + DEFAULT_ID = '00000000-0000-0000-0000-000000000002' + DEFAULT_NAME = _('DEFAULT') + SYSTEM_ID = '00000000-0000-0000-0000-000000000004' + SYSTEM_NAME = _('SYSTEM') members: models.Manager + id: str def get_members(self): - return self.members.all().distinct() + from users.models import User + if self.id == self.ROOT_ID: + return User.objects.all().exclude(is_service_account=True) + else: + return self.members.all().distinct() def add_member(self, user, role=None): from rbac.builtin import BuiltinRole @@ -72,12 +83,6 @@ class Organization(OrgRoleMixin, JMSBaseModel): 'users.User', related_name='orgs', through='rbac.RoleBinding', through_fields=('org', 'user') ) - ROOT_ID = '00000000-0000-0000-0000-000000000000' - ROOT_NAME = _('GLOBAL') - DEFAULT_ID = '00000000-0000-0000-0000-000000000002' - DEFAULT_NAME = _('DEFAULT') - SYSTEM_ID = '00000000-0000-0000-0000-000000000004' - SYSTEM_NAME = _('SYSTEM') orgs_mapping = None class Meta: