summaryrefslogtreecommitdiff
path: root/indoteknik_api
diff options
context:
space:
mode:
authorIndoteknik . <it@fixcomart.co.id>2025-05-31 12:52:01 +0700
committerIndoteknik . <it@fixcomart.co.id>2025-05-31 12:52:01 +0700
commitc73872a03e13203b0e335cef9270ca296363de61 (patch)
treea0c695b26bf86ad13ec0f4d9cda9d119ca064383 /indoteknik_api
parentab3b534beaaa9be924741e72c0280289fe6ac5a0 (diff)
(andri) try add webhook
Diffstat (limited to 'indoteknik_api')
-rw-r--r--indoteknik_api/controllers/api_v1/stock_picking.py54
1 files changed, 38 insertions, 16 deletions
diff --git a/indoteknik_api/controllers/api_v1/stock_picking.py b/indoteknik_api/controllers/api_v1/stock_picking.py
index efcc56eb..61880132 100644
--- a/indoteknik_api/controllers/api_v1/stock_picking.py
+++ b/indoteknik_api/controllers/api_v1/stock_picking.py
@@ -143,26 +143,48 @@ class StockPicking(controller.Controller):
'name': picking_data.name
})
+ # @http.route(prefix + 'webhook/biteship', type='json', auth='public', methods=['POST'], csrf=False)
+ # def udpate_status_from_bitehsip(self, **kw):
+ # try:
+ # if not request.jsonrequest:
+ # return "ok"
+
+ # data = request.jsonrequest # Ambil data JSON dari request
+ # event = data.get('event')
+
+ # # Handle Event Berdasarkan Jenisnya
+ # if event == "order.status":
+ # self.process_order_status(data)
+ # elif event == "order.price":
+ # self.process_order_price(data)
+ # elif event == "order.waybill_id":
+ # self.process_order_waybill(data)
+
+ # return {'success': True, 'message': f'Webhook {event} received'}
+ # except Exception as e:
+ # return {'success': False, 'message': str(e)}
+
@http.route(prefix + 'webhook/biteship', type='json', auth='public', methods=['POST'], csrf=False)
def udpate_status_from_bitehsip(self, **kw):
try:
- if not request.jsonrequest:
- return "ok"
-
- data = request.jsonrequest # Ambil data JSON dari request
- event = data.get('event')
-
- # Handle Event Berdasarkan Jenisnya
- if event == "order.status":
- self.process_order_status(data)
- elif event == "order.price":
- self.process_order_price(data)
- elif event == "order.waybill_id":
- self.process_order_waybill(data)
-
- return {'success': True, 'message': f'Webhook {event} received'}
+ # Selalu return "ok" dulu biar bisa daftar webhook
+ return "ok"
+
+ # TODO: Uncomment code dibawah setelah webhook berhasil terdaftar
+ # data = request.jsonrequest
+ # event = data.get('event')
+
+ # if event == "order.status":
+ # self.process_order_status(data)
+ # elif event == "order.price":
+ # self.process_order_price(data)
+ # elif event == "order.waybill_id":
+ # self.process_order_waybill(data)
+
+ # return {'success': True, 'message': f'Webhook {event} received'}
+
except Exception as e:
- return {'success': False, 'message': str(e)}
+ return "ok"
def process_order_status(self, data):
picking_model = request.env['stock.picking'].sudo().search([('biteship_id', '=', data.get('order_id'))],