summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIT Fixcomart <it@fixcomart.co.id>2025-05-05 09:59:59 +0000
committerIT Fixcomart <it@fixcomart.co.id>2025-05-05 09:59:59 +0000
commit2bd00a536bc314075a8a472cf5e36f80d7d72c8a (patch)
treededaf87ea66c0387ce678392531d581c3c3c03cd
parent258c9b0717a02dcd9cce3eb7703c33cf55d60813 (diff)
parent921bbc2f0b5b82945aebc11e96ba3847c6f2904d (diff)
Merged in lock-npwp (pull request #296)
Lock npwp
-rwxr-xr-xindoteknik_custom/models/sale_order.py13
-rwxr-xr-xindoteknik_custom/views/sale_order.xml6
2 files changed, 13 insertions, 6 deletions
diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py
index 4c48684d..0711e33a 100755
--- a/indoteknik_custom/models/sale_order.py
+++ b/indoteknik_custom/models/sale_order.py
@@ -202,9 +202,9 @@ class SaleOrder(models.Model):
customer_type = fields.Selection([
('pkp', 'PKP'),
('nonpkp', 'Non PKP')
- ], required=True)
- sppkp = fields.Char(string="SPPKP", required=True, tracking=True)
- npwp = fields.Char(string="NPWP", required=True, tracking=True)
+ ], required=True, compute='_compute_partner_field')
+ sppkp = fields.Char(string="SPPKP", required=True, tracking=True, compute='_compute_partner_field')
+ npwp = fields.Char(string="NPWP", required=True, tracking=True, compute='_compute_partner_field')
purchase_total = fields.Monetary(string='Purchase Total', compute='_compute_purchase_total')
voucher_id = fields.Many2one(comodel_name='voucher', string='Voucher', copy=False)
applied_voucher_id = fields.Many2one(comodel_name='voucher', string='Applied Voucher', copy=False)
@@ -994,6 +994,13 @@ class SaleOrder(models.Model):
# return [('id', 'not in', order_ids)]
# return ['&', ('order_line.invoice_lines.move_id.move_type', 'in', ('out_invoice', 'out_refund')), ('order_line.invoice_lines.move_id', operator, value)]
+ @api.depends('partner_id')
+ def _compute_partner_field(self):
+ for order in self:
+ partner = order.partner_id.parent_id or order.partner_id
+ order.npwp = partner.npwp
+ order.sppkp = partner.sppkp
+ order.customer_type = partner.customer_type
@api.onchange('partner_id')
def onchange_partner_contact(self):
diff --git a/indoteknik_custom/views/sale_order.xml b/indoteknik_custom/views/sale_order.xml
index 10c60e24..633ac6d1 100755
--- a/indoteknik_custom/views/sale_order.xml
+++ b/indoteknik_custom/views/sale_order.xml
@@ -98,9 +98,9 @@
<field name="pareto_status" />
</field>
<field name="analytic_account_id" position="after">
- <field name="customer_type" required="1" />
- <field name="npwp" placeholder='99.999.999.9-999.999' required="1" />
- <field name="sppkp" attrs="{'required': [('customer_type', '=', 'pkp')]}" />
+ <field name="customer_type" readonly="1" />
+ <field name="npwp" placeholder='99.999.999.9-999.999' readonly="1" />
+ <field name="sppkp" attrs="{'required': [('customer_type', '=', 'pkp')]}" readonly="1" />
<field name="email" required="1" />
<field name="unreserve_id" />
<field name="due_id" readonly="1" />