first base of project-changed apps: Herd-livestock-tag-log-elasticsearch-

This commit is contained in:
2025-05-24 15:01:55 +03:30
parent eab40af15d
commit 90a46e493c
129 changed files with 3844 additions and 187 deletions

View File

@@ -0,0 +1,57 @@
from apps.authorization import models as authorize_models
from apps.authentication.models import OrganizationType
from apps.core import permissions
class CreateUser(permissions.BasePermission):
"""
@permission: superuser can add users
"""
def has_permission(self, request, view):
user_level_info = self.get_user_permissions(request, view)
if 'superuser' in user_level_info['permissions']:
if 'organization' in request.data.keys():
org_type = OrganizationType.objects.get( # noqa
id=request.data['organization']['type']
)
print(org_type.key)
if 'J' in user_level_info['organization_type']:
return True
if 'U' in user_level_info['organization_type']:
if org_type.key == 'J' or org_type.key == 'U':
return False
else:
return True
if 'CO' in user_level_info['organization_type']:
if org_type.key == 'J' or org_type.key == 'U' or org_type.key == 'CO':
return False
else:
return True
return True
class CreateOrganization(permissions.BasePermission):
"""
@permission for adding organization
"""
def has_permission(self, request, view):
user_level_info = self.get_user_permissions(request, view)
if 'superuser' in user_level_info['permissions']:
org_type = OrganizationType.objects.get( # noqa
id=request.data['organization']['type']
)
print(org_type.key)
if 'J' in user_level_info['organization_type']:
return True
if 'U' in user_level_info['organization_type']:
if org_type.key == 'J' or org_type.key == 'U':
return False
else:
return True
if 'CO' in user_level_info['organization_type']:
if org_type.key == 'J' or org_type.key == 'U' or org_type.key == 'CO':
return False
else:
return True