From 2672ea9252651250f8f8d2649dda10d841c6c6bd Mon Sep 17 00:00:00 2001 From: Marco Colombo Date: Fri, 16 Apr 2021 10:41:20 +0200 Subject: [PATCH] fixup! [FIX] l10n_it_withholding_tax: porting fixes --- l10n_it_withholding_tax/models/account.py | 18 +++++++++++++----- .../models/withholding_tax.py | 8 ++++++-- .../tests/test_withholding_tax.py | 6 +++--- 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/l10n_it_withholding_tax/models/account.py b/l10n_it_withholding_tax/models/account.py index fe146c1f70ba..ce4c6fb700bd 100644 --- a/l10n_it_withholding_tax/models/account.py +++ b/l10n_it_withholding_tax/models/account.py @@ -183,7 +183,9 @@ def default_get(self, fields): Compute amount to pay proportionally to amount total - wt """ rec = super(AccountAbstractPayment, self).default_get(fields) - invoice_defaults = self.new({"reconciled_invoice_ids": rec.get("reconciled_invoice_ids")}).reconciled_invoice_ids + invoice_defaults = self.new( + {"reconciled_invoice_ids": rec.get("reconciled_invoice_ids")} + ).reconciled_invoice_ids if invoice_defaults and len(invoice_defaults) == 1: invoice = invoice_defaults[0] @@ -312,14 +314,20 @@ def _compute_amount_withholding_tax(self): amount_net_pay_residual = invoice.amount_net_pay invoice.withholding_tax_amount = withholding_tax_amount - reconciled_lines = invoice.line_ids.filtered(lambda line: line.account_id.user_type_id.type in ('receivable', 'payable')) - reconciled_amls = reconciled_lines.mapped('matched_debit_ids.debit_move_id') + \ - reconciled_lines.mapped('matched_credit_ids.credit_move_id') + reconciled_lines = invoice.line_ids.filtered( + lambda line: line.account_id.user_type_id.type + in ("receivable", "payable") + ) + reconciled_amls = reconciled_lines.mapped( + "matched_debit_ids.debit_move_id" + ) + reconciled_lines.mapped("matched_credit_ids.credit_move_id") for line in reconciled_amls: if not line.withholding_tax_generated_by_move_id: amount_net_pay_residual -= line.debit or line.credit - invoice.amount_net_pay_residual = float_round(amount_net_pay_residual, dp_obj.precision_get("Account")) + invoice.amount_net_pay_residual = float_round( + amount_net_pay_residual, dp_obj.precision_get("Account") + ) withholding_tax = fields.Boolean("Withholding Tax") withholding_tax_line_ids = fields.One2many( diff --git a/l10n_it_withholding_tax/models/withholding_tax.py b/l10n_it_withholding_tax/models/withholding_tax.py index eb2fa964d698..8b9db317f81b 100644 --- a/l10n_it_withholding_tax/models/withholding_tax.py +++ b/l10n_it_withholding_tax/models/withholding_tax.py @@ -167,9 +167,13 @@ def _check_date(self): ] ) - overlapping_rate = rate.env["withholding.tax.rate"].search(domain, limit=1) + overlapping_rate = rate.env["withholding.tax.rate"].search( + domain, limit=1 + ) if overlapping_rate: - raise ValidationError(_("Error! You cannot have 2 rates that overlap!")) + raise ValidationError( + _("Error! You cannot have 2 rates that overlap!") + ) withholding_tax_id = fields.Many2one( "withholding.tax", string="Withholding Tax", ondelete="cascade", readonly=True diff --git a/l10n_it_withholding_tax/tests/test_withholding_tax.py b/l10n_it_withholding_tax/tests/test_withholding_tax.py index 7025c5b96de2..17875c254107 100644 --- a/l10n_it_withholding_tax/tests/test_withholding_tax.py +++ b/l10n_it_withholding_tax/tests/test_withholding_tax.py @@ -200,10 +200,10 @@ def test_partial_payment(self): register_payments.action_post() # WT amount in payment move lines - payment_line_ids = self.invoice.line_ids.filtered(lambda l: l.account_id.internal_type in ['receivable', 'payable']) - self.assertTrue( - set(payment_line_ids.mapped("debit")) == {600, 150} + payment_line_ids = self.invoice.line_ids.filtered( + lambda l: l.account_id.internal_type in ["receivable", "payable"] ) + self.assertTrue(set(payment_line_ids.mapped("debit")) == {600, 150}) # WT aomunt applied in statement domain = [