This commit is contained in:
behruz-dev
2025-09-17 15:08:43 +05:00
parent 14f87df060
commit e91188ce12
2 changed files with 11 additions and 8 deletions

View File

@@ -12,20 +12,16 @@ class PermissionToActionListSerializer(serializers.ModelSerializer):
class PermissionToTabListSerializer(serializers.ModelSerializer): class PermissionToTabListSerializer(serializers.ModelSerializer):
permission_to_actions = PermissionToActionListSerializer(many=True)
class Meta: class Meta:
model = PermissionToTab model = PermissionToTab
fields = [ fields = [
'id', 'name', 'code', 'permission_to_actions' 'id', 'name', 'code'
] ]
class PermissionListSerializer(serializers.ModelSerializer): class PermissionListSerializer(serializers.ModelSerializer):
permission_tab = PermissionToTabListSerializer(many=True)
class Meta: class Meta:
model = Permission model = Permission
fields = [ fields = [
'id', 'name', 'code', 'permission_tab' 'id', 'name', 'code'
] ]

View File

@@ -8,7 +8,7 @@ from core.apps.accounts.serializers import user as serializers
from core.apps.accounts.permissions.permissions import HasRolePermission from core.apps.accounts.permissions.permissions import HasRolePermission
from core.apps.accounts.utils.permission import get_permissions_with_tabs from core.apps.accounts.utils.permission import get_permissions_with_tabs
from core.apps.shared.paginations.custom import CustomPageNumberPagination from core.apps.shared.paginations.custom import CustomPageNumberPagination
from core.apps.accounts.serializers.permission import PermissionListSerializer from core.apps.accounts.serializers.permission import PermissionListSerializer, PermissionToTabListSerializer, PermissionToActionListSerializer
from core.apps.accounts.models.permission import Permission from core.apps.accounts.models.permission import Permission
@@ -106,8 +106,15 @@ class UserPermissionListApiView(generics.GenericAPIView):
return Response({'success': False, 'message': 'User has no role assigned'}, status=400) return Response({'success': False, 'message': 'User has no role assigned'}, status=400)
serializer = self.serializer_class(user.role.permissions, many=True) serializer = self.serializer_class(user.role.permissions, many=True)
tab_permissions = PermissionToTabListSerializer(user.role.permission_to_tabs, many=True)
action_permissions = PermissionToActionListSerializer(user.role.permission_to_actions, many=True)
return Response( return Response(
{'success': True, 'permissions': serializer.data}, {
'success': True,
'permissions': serializer.data,
'tab_permissions': tab_permissions.data,
'action_permissions': action_permissions.data
},
status=200 status=200
) )