mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-13 22:09:17 +00:00
feat: 用户组绑定所有用户
This commit is contained in:
@@ -1,8 +1,11 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
from rest_framework import status
|
||||
from rest_framework.decorators import action
|
||||
from rest_framework.response import Response
|
||||
|
||||
from orgs.mixins.api import OrgBulkModelViewSet
|
||||
from ..models import UserGroup
|
||||
from ..models import UserGroup, User
|
||||
from ..serializers import UserGroupSerializer
|
||||
|
||||
__all__ = ['UserGroupViewSet']
|
||||
@@ -14,3 +17,13 @@ class UserGroupViewSet(OrgBulkModelViewSet):
|
||||
search_fields = filterset_fields
|
||||
serializer_class = UserGroupSerializer
|
||||
ordering = ('name',)
|
||||
rbac_perms = (
|
||||
("add_all_users", "users.change_usergroup"),
|
||||
)
|
||||
|
||||
@action(methods=['post'], detail=True, url_path='add-all-users')
|
||||
def add_all_users(self, request, *args, **kwargs):
|
||||
instance = self.get_object()
|
||||
users = User.get_org_users().exclude(groups__id=instance.id)
|
||||
instance.users.add(*users)
|
||||
return Response(status=status.HTTP_200_OK)
|
||||
|
Reference in New Issue
Block a user