diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2022-10-19 15:59:07 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2022-10-19 15:59:07 +0700 |
| commit | 2b3c94874466c3dd0a05f0f81dd4b09bc3f87987 (patch) | |
| tree | c36c102d30e478103fc3943d92a6bff09f4186e9 /base_accounting_kit | |
| parent | 27b232baf04f2e4501e3e90cd5902bffc3e2cfa5 (diff) | |
Update credit_limit.py
Diffstat (limited to 'base_accounting_kit')
| -rwxr-xr-x | base_accounting_kit/models/credit_limit.py | 66 |
1 files changed, 40 insertions, 26 deletions
diff --git a/base_accounting_kit/models/credit_limit.py b/base_accounting_kit/models/credit_limit.py index f7ca002..d290fe5 100755 --- a/base_accounting_kit/models/credit_limit.py +++ b/base_accounting_kit/models/credit_limit.py @@ -176,19 +176,27 @@ class SaleOrder(models.Model): @api.onchange('partner_id') def check_due(self): """To show the due amount and warning stage""" - if self.partner_id and self.partner_id.due_amount > 0 \ - and self.partner_id.active_limit \ - and self.partner_id.enable_credit_limit: - self.has_due = True - else: - self.has_due = False - if self.partner_id and self.partner_id.active_limit\ - and self.partner_id.enable_credit_limit: - if self.outstanding_amount >= self.partner_id.warning_stage: - if self.partner_id.warning_stage != 0: - self.is_warning = True - else: - self.is_warning = False + for order in self: + # partner_id = 0aku + if order.partner_id.parent_id: + partner_id = order.partner_id.parent_id + else: + partner_id = order.partner_id + + if partner_id and partner_id.due_amount > 0 \ + and partner_id.active_limit \ + and partner_id.enable_credit_limit: + order.has_due = True + else: + order.has_due = False + if partner_id and partner_id.active_limit\ + and partner_id.enable_credit_limit: + print(order.outstanding_amount) + if order.outstanding_amount >= partner_id.warning_stage: + if partner_id.warning_stage != 0: + order.is_warning = True + else: + order.is_warning = False class AccountMove(models.Model): @@ -257,16 +265,22 @@ class AccountMove(models.Model): @api.onchange('partner_id') def check_due(self): """To show the due amount and warning stage""" - if self.partner_id and self.partner_id.due_amount > 0 \ - and self.partner_id.active_limit \ - and self.partner_id.enable_credit_limit: - self.has_due = True - else: - self.has_due = False - if self.partner_id and self.partner_id.active_limit \ - and self.partner_id.enable_credit_limit: - if self.outstanding_amount >= self.partner_id.warning_stage: - if self.partner_id.warning_stage != 0: - self.is_warning = True - else: - self.is_warning = False + for order in self: + if order.partner_id.parent_id: + partner_id = order.partner_id.parent_id + else: + partner_id = order.partner_id + + if partner_id and partner_id.due_amount > 0 \ + and partner_id.active_limit \ + and partner_id.enable_credit_limit: + order.has_due = True + else: + order.has_due = False + if partner_id and partner_id.active_limit \ + and partner_id.enable_credit_limit: + if order.outstanding_amount >= partner_id.warning_stage: + if partner_id.warning_stage != 0: + order.is_warning = True + else: + order.is_warning = False |
