diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-07-18 10:51:31 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-07-18 10:51:31 +0700 |
| commit | 93146912c0f157edb4d4f08b4b17871277bb9677 (patch) | |
| tree | 6ce3976390566098b6a6b66bd330c29cdd24b586 /indoteknik_api/controllers/api_v1 | |
| parent | aa57ac0744ef0fee2a44f3130e1ddbb1934a5621 (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.py | 39 |
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 |
