summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1
diff options
context:
space:
mode:
authorRafi Zadanly <zadanlyr@gmail.com>2023-07-18 10:51:31 +0700
committerRafi Zadanly <zadanlyr@gmail.com>2023-07-18 10:51:31 +0700
commit93146912c0f157edb4d4f08b4b17871277bb9677 (patch)
tree6ce3976390566098b6a6b66bd330c29cdd24b586 /indoteknik_api/controllers/api_v1
parentaa57ac0744ef0fee2a44f3130e1ddbb1934a5621 (diff)
Add cron xml airway bill and update model, api
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
-rw-r--r--indoteknik_api/controllers/api_v1/sale_order.py39
1 files changed, 19 insertions, 20 deletions
diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py
index 038508c4..c3501db4 100644
--- a/indoteknik_api/controllers/api_v1/sale_order.py
+++ b/indoteknik_api/controllers/api_v1/sale_order.py
@@ -314,6 +314,24 @@ class SaleOrder(controller.Controller):
'id': sale_order.id,
'name': sale_order.name
})
+
+ @http.route(PREFIX_PARTNER + 'sale_order/<id>/awb', auth='public', methods=['GET', 'OPTIONS'])
+ @controller.Controller.must_authorized(private=True, private_key='partner_id')
+ def get_airway_bill_by_sale_order_id(self, **kw):
+ 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)
@http.route('/api/sale_order/invoiced', auth='public', methods=['GET'])
def get_sale_order_invoiced_by_partner_id(self, **kw):
@@ -418,23 +436,4 @@ 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
+ \ No newline at end of file