summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRafi Zadanly <zadanlyr@gmail.com>2023-08-23 13:29:13 +0700
committerRafi Zadanly <zadanlyr@gmail.com>2023-08-23 13:29:13 +0700
commit9e4511c8d27665a53d296ee648150121a7f6cf84 (patch)
tree3131aedb3084ce2100d5a27d5f2a34cfc4df5bcd
parentd1e92dcd8ee34d2140edfc2fe440cc53e89eec79 (diff)
Add sale order api response
-rw-r--r--indoteknik_api/controllers/api_v1/sale_order.py8
-rw-r--r--indoteknik_api/models/sale_order.py8
2 files changed, 10 insertions, 6 deletions
diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py
index ecc6c771..36803466 100644
--- a/indoteknik_api/controllers/api_v1/sale_order.py
+++ b/indoteknik_api/controllers/api_v1/sale_order.py
@@ -97,12 +97,8 @@ class SaleOrder(controller.Controller):
if not params['valid']:
return self.response(code=400, description=params)
- partner_child_ids = self.get_partner_child_ids(
- params['value']['partner_id'])
- domain = [
- ('id', '=', params['value']['id']),
- ('partner_id', 'in', partner_child_ids)
- ]
+ partner_child_ids = self.get_partner_child_ids(params['value']['partner_id'])
+ domain = [('id', '=', params['value']['id']), ('partner_id', 'in', partner_child_ids)]
data = {}
sale_order = request.env['sale.order'].search(domain)
if sale_order:
diff --git a/indoteknik_api/models/sale_order.py b/indoteknik_api/models/sale_order.py
index 9661a0ba..85bf5015 100644
--- a/indoteknik_api/models/sale_order.py
+++ b/indoteknik_api/models/sale_order.py
@@ -18,7 +18,15 @@ class SaleOrder(models.Model):
'invoice_count': sale_order.invoice_count,
'status': 'draft',
'date_order': self.env['rest.api'].datetime_to_str(sale_order.date_order, '%d/%m/%Y %H:%M:%S'),
+ 'pickings': []
}
+ for picking in sale_order.picking_ids:
+ data['pickings'].append({
+ 'id': picking.id,
+ 'name': picking.name,
+ 'tracking_number': picking.delivery_tracking_no or '',
+ 'delivered': picking.waybill_id.delivered or picking.driver_arrival_date != False,
+ })
if sale_order.state == 'cancel':
data['status'] = 'cancel'
if sale_order.state in ['draft', 'sent']: