| | |
| | | # 'phoneNumber': self.phone_number |
| | | } |
| | | parent_dict = {} |
| | | resources = [] |
| | | children_dict = {} |
| | | for role in self.roles: |
| | | for r in role.to_json().get("resources", []): |
| | | if not r["parentId"]: |
| | | resources.append(r) |
| | | continue |
| | | if r["parentId"] in parent_dict: |
| | | parent_dict[r["parentId"]].append(r) |
| | | if r["menuType"] != "1": |
| | | parent_dict[r["menuId"]] = r |
| | | else: |
| | | parent_dict[r["parentId"]] = [r] |
| | | |
| | | # roles = [role.to_json() for role in self.roles] |
| | | if r["parentId"] in children_dict: |
| | | children_dict[r["parentId"]].append(r) |
| | | else: |
| | | children_dict[r["parentId"]] = [r] |
| | | organization_roles = [role.to_json() for organization in self.organizations for role in |
| | | organization.roles] |
| | | for role in organization_roles: |
| | | for r in role.to_json().get("resources", []): |
| | | if not r["parentId"]: |
| | | resources.append(r) |
| | | continue |
| | | if r["parentId"] in parent_dict: |
| | | parent_dict[r["parentId"]].append(r) |
| | | if r["menuType"] != "1": |
| | | parent_dict[r["menuId"]] = r |
| | | else: |
| | | parent_dict[r["parentId"]] = [r] |
| | | |
| | | |
| | | # for resource in resources: |
| | | # if resource["menuId"] in parent_dict: |
| | | # resource[] |
| | | |
| | | if r["parentId"] in children_dict: |
| | | children_dict[r["parentId"]].append(r) |
| | | else: |
| | | children_dict[r["parentId"]] = [r] |
| | | resources = [] |
| | | for resource in parent_dict.values(): |
| | | resource["children"] = children_dict.get(resource["menuId"], []) |
| | | resources.append(resource) |
| | | json['resources'] = resources |
| | | return json |
| | | |