mirror of https://github.com/jumpserver/jumpserver
				
				
				
			fix(users): 修复用户在不同组织引起的问题
							parent
							
								
									8227f44058
								
							
						
					
					
						commit
						ddb71c43c4
					
				| 
						 | 
				
			
			@ -44,9 +44,7 @@ class UserViewSet(CommonApiMixin, UserQuerysetMixin, BulkModelViewSet):
 | 
			
		|||
    def get_queryset(self):
 | 
			
		||||
        return super().get_queryset().annotate(
 | 
			
		||||
            gc_m2m_org_members__role=GroupConcat('m2m_org_members__role'),
 | 
			
		||||
            gc_groups__name=GroupConcat('groups__name'),
 | 
			
		||||
            gc_groups=GroupConcat('groups__id', output_field=CharField())
 | 
			
		||||
        )
 | 
			
		||||
        ).prefetch_related('groups')
 | 
			
		||||
 | 
			
		||||
    def send_created_signal(self, users):
 | 
			
		||||
        if not isinstance(users, list):
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -560,12 +560,6 @@ class User(AuthMixin, TokenMixin, RoleMixin, MFAMixin, AbstractUser):
 | 
			
		|||
 | 
			
		||||
    @property
 | 
			
		||||
    def groups_display(self):
 | 
			
		||||
        if hasattr(self, 'gc_groups__name'):
 | 
			
		||||
            names = self.gc_groups__name
 | 
			
		||||
            if isinstance(names, str):
 | 
			
		||||
                return ' '.join(set(self.gc_groups__name.split(',')))
 | 
			
		||||
            else:
 | 
			
		||||
                return ''
 | 
			
		||||
        return ' '.join([group.name for group in self.groups.all()])
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -44,9 +44,6 @@ class UserSerializer(CommonBulkSerializerMixin, serializers.ModelSerializer):
 | 
			
		|||
        label=_('Password strategy'), write_only=True
 | 
			
		||||
    )
 | 
			
		||||
    mfa_level_display = serializers.ReadOnlyField(source='get_mfa_level_display')
 | 
			
		||||
    groups = GroupConcatedPrimaryKeyRelatedField(
 | 
			
		||||
        label=_('User group'), many=True, queryset=UserGroup.objects.all(), required=False
 | 
			
		||||
    )
 | 
			
		||||
    login_blocked = serializers.SerializerMethodField()
 | 
			
		||||
    can_update = serializers.SerializerMethodField()
 | 
			
		||||
    can_delete = serializers.SerializerMethodField()
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue