summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2023-07-06 15:55:10 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2023-07-06 15:55:10 +0700
commit21ee3f19583c28c3df3785eda0e6ce4b4ef7e48d (patch)
tree8abb7308eaf3e5fe701180862cf88662f4d563b2
parent93f85a378d6a8ea5b04a4320346a1a8decd01514 (diff)
API airway bill
-rw-r--r--indoteknik_api/controllers/api_v1/sale_order.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py
index c1665b72..038508c4 100644
--- a/indoteknik_api/controllers/api_v1/sale_order.py
+++ b/indoteknik_api/controllers/api_v1/sale_order.py
@@ -418,3 +418,23 @@ class SaleOrder(controller.Controller):
}
return self.response(data)
+
+ @http.route('/api/sale_order/<id>/airway', auth='public', methods=['GET'])
+ def get_sale_order_airway_bill_by_id(self, **kw):
+ if not self.authenticate():
+ return self.unauthorized_response()
+
+ id = kw.get('id')
+ airway_bill = request.env['airway.bill'].search([('so_id', '=', id)], limit=1)
+
+ data = airway_bill.decode_response()
+ result = data['rajaongkir']['result']
+
+ response = {
+ 'delivery_status': result['delivery_status'],
+ 'manifest': result['manifest'],
+ 'delivered': result['delivered'],
+ 'waybill_number': result['summary']['waybill_number']
+ }
+
+ return self.response(response) \ No newline at end of file