diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2024-02-06 15:32:08 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2024-02-06 15:32:08 +0700 |
| commit | 1f25d11038dc36122a485694d5fc3374d98090d1 (patch) | |
| tree | 86078071c1b77ac44717c972ea5bc0a3542f6eb3 | |
| parent | 4de40c41c5f1c7d1221cd177667e6935ea993b71 (diff) | |
Fix sale order calculate SO Status
| -rwxr-xr-x | indoteknik_custom/models/sale_order.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py index 5173ccb7..24c642d9 100755 --- a/indoteknik_custom/models/sale_order.py +++ b/indoteknik_custom/models/sale_order.py @@ -262,17 +262,18 @@ class SaleOrder(models.Model): ('state', 'in', so_state), ('so_status', '!=', 'terproses'), ]) + for sale in sales: - picking_states = {'draft', 'assigned', 'confirmed', 'waiting'} + picking_states = ['draft', 'assigned', 'confirmed', 'waiting'] have_outstanding_pick = any(x.state in picking_states for x in sale.picking_ids) sum_qty_so = sum(so_line.product_uom_qty for so_line in sale.order_line) sum_qty_ship = sum(so_line.qty_delivered for so_line in sale.order_line) - if not have_outstanding_pick: - sale.so_status = 'terproses' - elif sum_qty_so > sum_qty_ship > 0: + if sum_qty_so > sum_qty_ship > 0: sale.so_status = 'sebagian' + elif not have_outstanding_pick: + sale.so_status = 'terproses' else: sale.so_status = 'menunggu' |
