Files
ibapp-backend/core/apps/accounts/permissions/permissions.py
2025-08-01 10:16:36 +05:00

18 lines
579 B
Python

from rest_framework.permissions import BasePermission
class HasRolePermission(BasePermission):
def has_permission(self, request, view):
user = request.user
if not user.is_authenticated:
return False
required_permissions = getattr(view, 'required_permissions', [])
if not required_permissions:
return True
if user.role:
user_permissions = user.role.permissions.values_list('code', flat=True)
return all(perm in user_permissions for perm in required_permissions)
return False