From 72888c5c59078195420f6a6da3ae1c65766390d7 Mon Sep 17 00:00:00 2001 From: Azka Nathan Date: Tue, 27 Jun 2023 09:51:36 +0700 Subject: fix pkp non pkp quotation --- .../models/account_move_due_extension.py | 7 ++++--- indoteknik_custom/models/sale_order.py | 20 +++++++++++++------- indoteknik_custom/views/account_move_views.xml | 2 -- indoteknik_custom/views/res_partner.xml | 4 ++-- indoteknik_custom/views/sale_order.xml | 6 +++--- 5 files changed, 22 insertions(+), 17 deletions(-) diff --git a/indoteknik_custom/models/account_move_due_extension.py b/indoteknik_custom/models/account_move_due_extension.py index f4ad1076..2e52f66c 100644 --- a/indoteknik_custom/models/account_move_due_extension.py +++ b/indoteknik_custom/models/account_move_due_extension.py @@ -41,7 +41,6 @@ class DueExtension(models.Model): raise UserError('Anda sudah mengajukan ask approval') elif self.approval_status == 'approved': raise UserError('Document sudah di approve') - def approve_new_due(self): if self.env.user.is_accounting: @@ -68,7 +67,9 @@ class DueExtension(models.Model): ('id', '=', self.order_id.id) ]) - sales.state = 'sale' + # sales.state = 'sale' + sales.action_confirm() + self.order_id.due_id = self.id else: raise UserError('Hanya Finance Yang Bisa Approve') @@ -105,7 +106,7 @@ class DueExtension(models.Model): _logger.info("Due Extension Line generated %s" % count) def unlink(self): res = super(DueExtension, self).unlink() - if self._name == 'due.extension': + if not self._name == 'due.extension': raise UserError('Due Extension tidak bisa didelete') return res diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py index 5bb93805..a17cf7c8 100755 --- a/indoteknik_custom/models/sale_order.py +++ b/indoteknik_custom/models/sale_order.py @@ -217,9 +217,12 @@ class SaleOrder(models.Model): @api.onchange('partner_id') def onchange_partner_contact(self): - self.npwp = self.partner_id.npwp - self.sppkp = self.partner_id.sppkp - self.customer_type = self.partner_id.customer_type + parent_id = self.partner_id.parent_id + parent_id = parent_id if parent_id else self.partner_id + + self.npwp = parent_id.npwp + self.sppkp = parent_id.sppkp + self.customer_type = parent_id.customer_type def _get_purchases(self): po_state = ['done', 'draft', 'purchase'] @@ -435,16 +438,19 @@ class SaleOrder(models.Model): } } - def _set_sppkp_npwp_contact(self): + def _set_sppkp_npwp_contact(self): + parent_id = self.partner_id.parent_id + parent_id = parent_id if parent_id else self.partner_id + for contact in self: partner_customer_type = contact.customer_type - contact.partner_id.customer_type = partner_customer_type + parent_id.customer_type = partner_customer_type partner_npwp = contact.npwp - contact.partner_id.npwp = partner_npwp + parent_id.npwp = partner_npwp partner_sppkp = contact.sppkp - contact.partner_id.sppkp = partner_sppkp + parent_id.sppkp = partner_sppkp def action_confirm(self): for order in self: diff --git a/indoteknik_custom/views/account_move_views.xml b/indoteknik_custom/views/account_move_views.xml index 42262780..d11f3679 100644 --- a/indoteknik_custom/views/account_move_views.xml +++ b/indoteknik_custom/views/account_move_views.xml @@ -42,8 +42,6 @@