summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorit-fixcomart <it@fixcomart.co.id>2024-11-05 12:04:45 +0700
committerit-fixcomart <it@fixcomart.co.id>2024-11-05 12:04:45 +0700
commit772d42fba3fddccd3ca951bbedadeca4044593a9 (patch)
treecebeccd69c91077bea0bfcb02a334631e2f80287
parent7afd1ef51e18f9dcb1c0e71ea1e512b52284d3d1 (diff)
<iman> add error handling ask aproval
-rwxr-xr-xindoteknik_custom/models/sale_order.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py
index 1ad08154..8e170b1c 100755
--- a/indoteknik_custom/models/sale_order.py
+++ b/indoteknik_custom/models/sale_order.py
@@ -768,7 +768,28 @@ class SaleOrder(models.Model):
self._validate_order()
for order in self:
order.order_line.validate_line()
+ order.check_data_real_delivery_address()
+ order._validate_order()
+ order.sale_order_check_approve()
+
+ main_parent = order.partner_id.get_main_parent()
+ SYSTEM_UID = 25
+ FROM_WEBSITE = order.create_uid.id == SYSTEM_UID
+ if FROM_WEBSITE and main_parent.use_so_approval and order.web_approval not in ['cust_procurement','cust_director']:
+ raise UserError("This order not yet approved by customer procurement or director")
+
+ if not order.client_order_ref and order.create_date > datetime(2024, 6, 27):
+ raise UserError("Customer Reference kosong, di isi dengan NO PO jika PO tidak ada mohon ditulis Tanpa PO")
+
+ if not order.commitment_date and order.create_date > datetime(2024, 9, 12):
+ raise UserError("Expected Delivery Date kosong, wajib diisi")
+
+ if not order.real_shipping_id:
+ UserError('Real Delivery Address harus di isi')
+
+ if order.validate_partner_invoice_due():
+ return self._create_notification_action('Notification','Terdapat invoice yang telah melewati batas waktu, mohon perbarui pada dokumen Due Extension')
term_days = 0
for term_line in order.payment_term_id.line_ids: