summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/sale_order.py
diff options
context:
space:
mode:
authorit-fixcomart <it@fixcomart.co.id>2025-08-06 09:25:09 +0700
committerit-fixcomart <it@fixcomart.co.id>2025-08-06 09:25:09 +0700
commit10d0e2bf639b31e58fd0d80a61062aa3ddc8f041 (patch)
treefd92b9538c820e1419154a43f19bea1090d62465 /indoteknik_custom/models/sale_order.py
parentfcd98b0f038cfa1653b8b12df77750253ebd7a68 (diff)
parentc42bdba2996d85d328897e42e7a1d86001b3a14d (diff)
<hafid> change delivered api
Diffstat (limited to 'indoteknik_custom/models/sale_order.py')
-rwxr-xr-xindoteknik_custom/models/sale_order.py20
1 files changed, 19 insertions, 1 deletions
diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py
index 4e36a9fb..94cfdc39 100755
--- a/indoteknik_custom/models/sale_order.py
+++ b/indoteknik_custom/models/sale_order.py
@@ -163,7 +163,7 @@ class SaleOrder(models.Model):
carrier_id = fields.Many2one('delivery.carrier', string='Shipping Method', tracking=3)
have_visit_service = fields.Boolean(string='Have Visit Service', compute='_have_visit_service',
help='To compute is customer get visit service')
- delivery_amt = fields.Float(string='Delivery Amt', copy=False)
+ delivery_amt = fields.Float(string='Delivery Amt', copy=False, tracking=True)
shipping_cost_covered = fields.Selection([
('indoteknik', 'Indoteknik'),
('customer', 'Customer')
@@ -3088,6 +3088,24 @@ class SaleOrder(models.Model):
except:
pass
+ #payment term vals
+ if 'payment_term_id' in vals and any(
+ order.approval_status in ['pengajuan1', 'pengajuan2', 'approved'] for order in self):
+ raise UserError(
+ "Payment Term tidak dapat diubah karena Sales Order sedang dalam proses approval atau sudah diapprove.")
+
+ if 'payment_term_id' in vals:
+ for order in self:
+ partner = order.partner_id.parent_id or order.partner_id
+ customer_payment_term = partner.property_payment_term_id
+ if vals['payment_term_id'] != customer_payment_term.id:
+ raise UserError(
+ f"Payment Term berbeda pada Master Data Customer. "
+ f"Harap ganti ke '{customer_payment_term.name}' "
+ f"sesuai dengan payment term yang terdaftar pada customer."
+ )
+
+
res = super(SaleOrder, self).write(vals)
# Update before margin setelah write