diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-02-14 13:55:14 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-02-14 13:55:14 +0700 |
| commit | ce3e018ad61808b7e581e416525e6696ed088916 (patch) | |
| tree | 6459ae3b356ccb6a9b75e7bb11b3c998aa9d0070 /indoteknik_api/models/sale_order.py | |
| parent | 237b623f8c1ceda7a4b6ce5ef28f629c84425205 (diff) | |
| parent | c68437fc15bd25e00c81001a4d1324a29c50c6bd (diff) | |
Merge branch 'feature/rest-api' into staging
Diffstat (limited to 'indoteknik_api/models/sale_order.py')
| -rw-r--r-- | indoteknik_api/models/sale_order.py | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/indoteknik_api/models/sale_order.py b/indoteknik_api/models/sale_order.py index c3f3dccb..7ce8ff61 100644 --- a/indoteknik_api/models/sale_order.py +++ b/indoteknik_api/models/sale_order.py @@ -24,9 +24,19 @@ class SaleOrder(models.Model): data['status'] = 'waiting' if sale_order.state == 'sale': data['status'] = 'sale' + picking_count = { + 'assigned': 0, + 'done': 0, + } for picking in sale_order.picking_ids: - if picking.state == 'assigned': - data['status'] = 'shipping' + if picking.state in ['confirmed', 'assigned']: + picking_count['assigned'] += 1 + if picking.state == 'done': + picking_count['done'] += 1 + if picking_count['assigned'] > 0: + data['status'] = 'shipping' + if picking_count['done'] > 0: + data['status'] = 'partial_shipping' if sale_order.state == 'done': data['status'] = 'done' |
