Files
RasadDam_Backend/apps/authentication/services/service.py

43 lines
1.2 KiB
Python

import typing
from apps.authentication.models import Organization, OrganizationType
def get_users_of_organization(org: Organization) -> typing.Any:
""" get users of an organizations """
user_relations = org.user_organization.all()
users_list = [{
'name': f"{rel.user.first_name} {rel.user.last_name}",
'national_code': rel.user.national_code,
'mobile': rel.user.mobile,
'phone': rel.user.phone,
'address': rel.user.address
} for rel in user_relations]
return users_list
def get_all_org_child(org: Organization = None) -> typing.Any:
"""
get all child of an organization
"""
descendants = []
children = org.parents.all()
for child in children:
descendants.append(child)
descendants.extend(get_all_org_child(child))
return descendants
def get_all_org_type_child(org_type: OrganizationType = None) -> typing.Any:
"""
get all child of an organization
"""
descendants = []
children = org_type.children.all()
for child in children:
descendants.append(child)
descendants.extend(get_all_org_type_child(child))
return descendants