From 8727296e3bd034d66a026557d7d8e242a3a153e9 Mon Sep 17 00:00:00 2001 From: Azka Nathan Date: Mon, 26 Aug 2024 10:17:15 +0700 Subject: cr po --- indoteknik_custom/models/purchase_order.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/indoteknik_custom/models/purchase_order.py b/indoteknik_custom/models/purchase_order.py index c6512772..2517d72c 100755 --- a/indoteknik_custom/models/purchase_order.py +++ b/indoteknik_custom/models/purchase_order.py @@ -434,6 +434,8 @@ class PurchaseOrder(models.Model): def button_confirm(self): res = super(PurchaseOrder, self).button_confirm() current_time = datetime.now() + self.check_ppn_mix() + self.check_data_vendor() if self.total_percent_margin < self.total_so_percent_margin and not self.env.user.is_purchasing_manager and not self.env.user.is_leader: raise UserError("Beda Margin dengan Sales, harus approval Manager") @@ -477,9 +479,22 @@ class PurchaseOrder(models.Model): self.date_planned = delta_time self.date_deadline_ref_date_planned() self.unlink_purchasing_job_state() + return res + def check_ppn_mix(self): + reference_taxes = self.order_line[0].taxes_id + + for line in self.order_line: + if line.taxes_id != reference_taxes: + raise UserError("PPN harus sama untuk semua baris pada line.") + + def check_data_vendor(self): + vendor = self.partner_id + if not vendor.email_finance and vendor.email_sales: + raise UserError("Email Finance dan Email Sales pada vendor harus diisi") + def unlink_purchasing_job_state(self): for line in self.order_line: purchasing_job_state = self.env['purchasing.job.state'].search([ -- cgit v1.2.3