diff options
| author | FIN-IT_AndriFP <it@fixcomart.co.id> | 2025-09-22 15:39:32 +0700 |
|---|---|---|
| committer | FIN-IT_AndriFP <it@fixcomart.co.id> | 2025-09-22 15:39:32 +0700 |
| commit | 327835caeb892b66813383456d83156c37b666e1 (patch) | |
| tree | d5faa7bb6d53290a84f9bfd81469cb88218d2866 | |
| parent | 84bfce78983a3bac22e647740aeeda2e88426310 (diff) | |
(andri) add previous pt
| -rw-r--r-- | indoteknik_api/controllers/api_v1/partner.py | 11 | ||||
| -rw-r--r-- | indoteknik_custom/models/res_partner.py | 6 | ||||
| -rw-r--r-- | indoteknik_custom/views/res_partner.xml | 1 |
3 files changed, 16 insertions, 2 deletions
diff --git a/indoteknik_api/controllers/api_v1/partner.py b/indoteknik_api/controllers/api_v1/partner.py index b1d8d5f3..8d67800c 100644 --- a/indoteknik_api/controllers/api_v1/partner.py +++ b/indoteknik_api/controllers/api_v1/partner.py @@ -295,7 +295,14 @@ class Partner(controller.Controller): partner = partner.parent_id or partner - if any(line.days == 0 for line in partner.property_payment_term_id.line_ids): + payment_term = ( + partner.previous_payment_term_id + if partner.is_cbd_locked + else partner.property_payment_term_id + ) + + # if any(line.days == 0 for line in partner.property_payment_term_id.line_ids): + if any(line.days == 0 for line in payment_term.line_ids): return self.response(code=402, description='Partner not tempo') domain_result_tempo = [('partner_id', '=', partner.id), ('payment_state', '=', 'not_paid'), ('state', '=', 'posted')] @@ -315,7 +322,7 @@ class Partner(controller.Controller): data = { 'name': partner.name, - 'payment_term': partner.property_payment_term_id.name, + 'payment_term': payment_term.name, 'amount_due': result_tempo, 'amount_due_total': result_tempo_total, 'amount_jatuh_tempo_total': result_jatuh_tempo_total, diff --git a/indoteknik_custom/models/res_partner.py b/indoteknik_custom/models/res_partner.py index 36570e8f..8aaee47e 100644 --- a/indoteknik_custom/models/res_partner.py +++ b/indoteknik_custom/models/res_partner.py @@ -194,6 +194,12 @@ class ResPartner(models.Model): default=_default_payment_term, tracking=3 ) + previous_payment_term_id = fields.Many2one( + 'account.payment.term', + string='Previous Payment Term', + readonly=True + ) + @api.depends("street", "street2", "city", "state_id", "country_id", "blok", "nomor", "rt", "rw", "kelurahan_id", "kecamatan_id") diff --git a/indoteknik_custom/views/res_partner.xml b/indoteknik_custom/views/res_partner.xml index c32151d8..a7770f1e 100644 --- a/indoteknik_custom/views/res_partner.xml +++ b/indoteknik_custom/views/res_partner.xml @@ -21,6 +21,7 @@ <field name="reference_number"/> </field> <field name="property_payment_term_id" position="after"> + <field name="previous_payment_term_id" /> <field name="is_cbd_locked" readonly="1"/> <field name="user_payment_terms_sales" readonly="1"/> <field name="date_payment_terms_sales" readonly="1"/> |
