diff options
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/stock_picking.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/indoteknik_api/controllers/api_v1/stock_picking.py b/indoteknik_api/controllers/api_v1/stock_picking.py index 55e07152..ceb6b9d3 100644 --- a/indoteknik_api/controllers/api_v1/stock_picking.py +++ b/indoteknik_api/controllers/api_v1/stock_picking.py @@ -3,6 +3,7 @@ from odoo import http from odoo.http import request from pytz import timezone from datetime import datetime +import json class StockPicking(controller.Controller): @@ -138,13 +139,12 @@ class StockPicking(controller.Controller): 'name': picking_data.name }) - @http.route(prefix + 'webhook/biteship', type='json', auth='public', methods=['POST'], csrf=False) + @http.route(prefix + 'webhook/biteship', auth='public', methods=['POST'], csrf=False) def udpate_status_from_bitehsip(self, **kw): try: - if not request.jsonrequest: - return "ok" + data = kw # Ambil data JSON dari request - data = request.jsonrequest # Ambil data JSON dari request + print(data) event = data.get('event') # Handle Event Berdasarkan Jenisnya @@ -155,9 +155,9 @@ class StockPicking(controller.Controller): elif event == "order.waybill_id": self.process_order_waybill(data) - return {'success': True, 'message': f'Webhook {event} received'} + return self.response({'success': True}) except Exception as e: - return {'success': False, 'message': str(e)} + return self.response({'success': False, 'message': str(e)}) def process_order_status(self, data): picking_model = request.env['stock.picking'].sudo().search([('biteship_id', '=', data.get('order_id'))], limit=1) |
