import / fix --> unions list / paginate orgs list in rancher link

This commit is contained in:
2025-12-23 11:37:51 +03:30
parent 056f4722f1
commit 846e57dd41
3 changed files with 26 additions and 5 deletions

View File

@@ -10,19 +10,19 @@ class RancherOrganizationService:
different services of ranchers linked to organization
"""
def orgs_linked_rancher(self, org: Organization = None):
def orgs_linked_rancher(self, org: Organization = None, org_type_key: str = None):
"""
list of organizations with their information of rancher, herd, ....
"""
if org.type.key != 'ADM':
organizations = get_all_org_child(org)
else:
organizations = Organization.objects.filter(type__key='CO')
organizations = Organization.objects.filter(type__key=org_type_key)
linked_qs = RancherOrganizationLink.objects.select_related(
'rancher',
'organization'
).filter(organization__in=organizations, organization__type__key='CO')
).filter(organization__in=organizations, organization__type__key=org_type_key)
organizations = organizations.annotate(
rancher_count=Count(

View File

@@ -303,9 +303,10 @@ class RancherOrganizationLinkViewSet(
list of organizations with rancher information
"""
org = get_organization_by_user(request.user)
result = self.orgs_linked_rancher(org=org)
result = self.orgs_linked_rancher(org=org, org_type_key='CO')
return Response(result)
page = self.paginate_queryset(result) # paginate queryset
return self.get_paginated_response(result)
@action(
methods=['get'],