From 3434e241f5efd3ca1326e051dbf1b639978e7f3e Mon Sep 17 00:00:00 2001 From: MohamedGad100 Date: Tue, 30 Dec 2025 08:34:39 +0200 Subject: [PATCH] Fix create_partner_bank parameter parsing --- .../odex_takaful/controllers/takaful_api.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/odex25_takaful/odex_takaful/controllers/takaful_api.py b/odex25_takaful/odex_takaful/controllers/takaful_api.py index 199035aa9..2a0e49b7f 100644 --- a/odex25_takaful/odex_takaful/controllers/takaful_api.py +++ b/odex25_takaful/odex_takaful/controllers/takaful_api.py @@ -5,12 +5,19 @@ class PartnerBankController(http.Controller): @http.route('/api/create_partner_bank', type='json', auth='user', methods=['POST'], csrf=False) def create_partner_bank(self, **kwargs): - - data = request.jsonrequest or {} - - partner_id = data.get('partner_id') - bank_id = data.get('bank_id') - acc_number = data.get('acc_number') + # In Odoo JSON-RPC with type='json', params are passed as keyword arguments + # Try kwargs first (standard Odoo JSON-RPC behavior) + partner_id = kwargs.get('partner_id') + bank_id = kwargs.get('bank_id') + acc_number = kwargs.get('acc_number') + + # Fallback to request.jsonrequest if not in kwargs + # (request.jsonrequest contains params directly in Odoo JSON-RPC) + if not partner_id and request.jsonrequest: + data = request.jsonrequest + partner_id = partner_id or data.get('partner_id') + bank_id = bank_id or data.get('bank_id') + acc_number = acc_number or data.get('acc_number') if not partner_id: return {'error': 'partner_id is required'}