summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2024-05-22 09:34:56 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2024-05-22 09:34:56 +0700
commitbb0162c4c9ac17cc70605349261107df7604025c (patch)
tree759bd5f3ce491330ad0899aa783c06996d4c3490 /indoteknik_api/controllers/api_v1
parentad1325d80785f236a32bff2f2645fe8c85c50efb (diff)
change request api list site
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
-rw-r--r--indoteknik_api/controllers/api_v1/partner.py15
1 files changed, 4 insertions, 11 deletions
diff --git a/indoteknik_api/controllers/api_v1/partner.py b/indoteknik_api/controllers/api_v1/partner.py
index 1e7220cc..a6e14a19 100644
--- a/indoteknik_api/controllers/api_v1/partner.py
+++ b/indoteknik_api/controllers/api_v1/partner.py
@@ -8,19 +8,12 @@ class Partner(controller.Controller):
prefix = '/api/v1/'
def get_partner_child_ids(self, partner_id):
- def _get_all_child_ids(partner):
- child_ids = [partner.id]
- for child in partner.child_ids:
- child_ids += _get_all_child_ids(child)
- return child_ids
-
partner = request.env[self._name].search([('id', '=', partner_id)], limit=1)
- partner_child_ids = _get_all_child_ids(partner)
-
+ if not partner.parent_id:
+ partner_child_ids = [x['id'] for x in partner.child_ids] + [partner.id]
if partner.parent_id:
- partner_child_ids += _get_all_child_ids(partner.parent_id)
-
- return list(set(partner_child_ids))
+ partner_child_ids = [x['id'] for x in partner.parent_id.child_ids]
+ return partner_child_ids
@http.route(prefix + 'partner/<id>/list/site', auth='public', methods=['GET', 'OPTIONS'])
@controller.Controller.must_authorized()