summaryrefslogtreecommitdiff
path: root/indoteknik_api/models/sale_order.py
diff options
context:
space:
mode:
Diffstat (limited to 'indoteknik_api/models/sale_order.py')
-rw-r--r--indoteknik_api/models/sale_order.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/indoteknik_api/models/sale_order.py b/indoteknik_api/models/sale_order.py
index 9be03927..23be358a 100644
--- a/indoteknik_api/models/sale_order.py
+++ b/indoteknik_api/models/sale_order.py
@@ -60,18 +60,22 @@ class SaleOrder(models.Model):
# 'tracking_number': picking.delivery_tracking_no or '',
# 'delivered': picking.waybill_id.delivered or picking.driver_arrival_date != False or picking.sj_return_date != False,
})
+
if sale_order.state == 'cancel':
data['status'] = 'cancel'
- if sale_order.state == 'draft' and sale_order.approval_status == False:
- data['status'] = 'draft'
- if sale_order.state == 'draft' and sale_order.approval_status in ['pengajuan1', 'pengajuan2']:
- data['status'] = 'waiting'
-
+ elif sale_order.state == 'draft':
+ if not sale_order.approval_status:
+ data['status'] = 'draft'
+ elif sale_order.approval_status in ('pengajuan1', 'pengajuan2'):
+ if sale_order.payment_status in ('', 'pending', False, None, 'expire'):
+ data['status'] = 'belum_bayar'
+ elif sale_order.payment_status not in ['', 'pending', False, None, 'expire']:
+ data['status'] = 'waiting'
if sale_order.state == 'sale':
bu_pickings = [
p for p in sale_order.picking_ids
- if p.picking_type_id and p.picking_type_id.id == 29
+ if p.picking_type_id and p.picking_type_id.id == 29 and p.state != 'cancel'
]
# Hitung status masing-masing picking