mirror of
https://github.com/OCA/account-reconcile.git
synced 2025-01-20 12:27:39 +02:00
[FIX] account_reconcile_oca: Fix wrong display on reconciled moves
If your reconcile an invoice and in the old option, the reconcile widget shows something weird with three lines but we should have only two. The data was right with 2 lines only.
This commit is contained in:
committed by
Luis Rodriguez
parent
78bcf45722
commit
65f62d2c06
@@ -438,7 +438,7 @@ class AccountBankStatementLine(models.Model):
|
||||
return
|
||||
self.partner_id = self.manual_partner_id
|
||||
|
||||
@api.depends("reconcile_data")
|
||||
@api.depends("reconcile_data", "is_reconciled")
|
||||
def _compute_reconcile_data_info(self):
|
||||
for record in self:
|
||||
if record.reconcile_data:
|
||||
@@ -553,11 +553,6 @@ class AccountBankStatementLine(models.Model):
|
||||
reconcile_auxiliary_id,
|
||||
self.manual_reference,
|
||||
)
|
||||
else:
|
||||
other_lines = (
|
||||
other_lines.matched_credit_ids.credit_move_id
|
||||
| other_lines.matched_debit_ids.debit_move_id
|
||||
)
|
||||
for line in other_lines:
|
||||
reconcile_auxiliary_id, lines = self._get_reconcile_line(
|
||||
line, "other", from_unreconcile=from_unreconcile
|
||||
@@ -579,7 +574,7 @@ class AccountBankStatementLine(models.Model):
|
||||
result = getattr(self, "_reconcile_bank_line_%s" % self.reconcile_mode)(
|
||||
self._prepare_reconcile_line_data(self.reconcile_data_info["data"])
|
||||
)
|
||||
self.reconcile_data_info = False
|
||||
self.reconcile_data = False
|
||||
return result
|
||||
|
||||
def _reconcile_bank_line_edit(self, data):
|
||||
|
||||
@@ -200,7 +200,11 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
||||
lambda r: r.account_id == self.bank_journal_euro.suspense_account_id
|
||||
)
|
||||
)
|
||||
number_of_lines = len(bank_stmt_line.reconcile_data_info["data"])
|
||||
bank_stmt_line.reconcile_bank_line()
|
||||
self.assertEqual(
|
||||
number_of_lines, len(bank_stmt_line.reconcile_data_info["data"])
|
||||
)
|
||||
self.assertTrue(bank_stmt_line.is_reconciled)
|
||||
self.assertFalse(
|
||||
bank_stmt_line.move_id.line_ids.filtered(
|
||||
@@ -267,7 +271,11 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
||||
self.assertTrue(f.can_reconcile)
|
||||
self.assertEqual(inv1.amount_residual_signed, 100)
|
||||
self.assertEqual(inv2.amount_residual_signed, 100)
|
||||
number_of_lines = len(bank_stmt_line.reconcile_data_info["data"])
|
||||
bank_stmt_line.reconcile_bank_line()
|
||||
self.assertEqual(
|
||||
number_of_lines, len(bank_stmt_line.reconcile_data_info["data"])
|
||||
)
|
||||
self.assertEqual(inv1.amount_residual_signed, 30)
|
||||
self.assertEqual(inv2.amount_residual_signed, 70)
|
||||
|
||||
@@ -327,7 +335,11 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
||||
self.assertTrue(f.can_reconcile)
|
||||
self.assertEqual(inv1.amount_residual_signed, -100)
|
||||
self.assertEqual(inv2.amount_residual_signed, -100)
|
||||
number_of_lines = len(bank_stmt_line.reconcile_data_info["data"])
|
||||
bank_stmt_line.reconcile_bank_line()
|
||||
self.assertEqual(
|
||||
number_of_lines, len(bank_stmt_line.reconcile_data_info["data"])
|
||||
)
|
||||
self.assertEqual(inv1.amount_residual_signed, -30)
|
||||
self.assertEqual(inv2.amount_residual_signed, -70)
|
||||
|
||||
@@ -360,7 +372,11 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
||||
self.assertFalse(f.can_reconcile)
|
||||
f.manual_model_id = self.rule
|
||||
self.assertTrue(f.can_reconcile)
|
||||
number_of_lines = len(bank_stmt_line.reconcile_data_info["data"])
|
||||
bank_stmt_line.reconcile_bank_line()
|
||||
self.assertEqual(
|
||||
number_of_lines, len(bank_stmt_line.reconcile_data_info["data"])
|
||||
)
|
||||
self.assertEqual(2, len(bank_stmt_line.move_id.line_ids))
|
||||
self.assertTrue(
|
||||
bank_stmt_line.move_id.line_ids.filtered(
|
||||
@@ -400,7 +416,11 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
||||
self.assertFalse(f.can_reconcile)
|
||||
f.manual_model_id = self.rule
|
||||
self.assertTrue(f.can_reconcile)
|
||||
number_of_lines = len(bank_stmt_line.reconcile_data_info["data"])
|
||||
bank_stmt_line.reconcile_bank_line()
|
||||
self.assertEqual(
|
||||
number_of_lines, len(bank_stmt_line.reconcile_data_info["data"])
|
||||
)
|
||||
self.assertEqual(3, len(bank_stmt_line.move_id.line_ids))
|
||||
self.assertTrue(
|
||||
bank_stmt_line.move_id.line_ids.filtered(
|
||||
@@ -453,7 +473,11 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
||||
self.assertFalse(f.can_reconcile)
|
||||
f.manual_model_id = self.rule
|
||||
self.assertTrue(f.can_reconcile)
|
||||
number_of_lines = len(bank_stmt_line.reconcile_data_info["data"])
|
||||
bank_stmt_line.reconcile_bank_line()
|
||||
self.assertEqual(
|
||||
number_of_lines, len(bank_stmt_line.reconcile_data_info["data"])
|
||||
)
|
||||
self.assertNotEqual(self.current_assets_account, receivable1.account_id)
|
||||
self.assertTrue(
|
||||
bank_stmt_line.move_id.line_ids.filtered(
|
||||
@@ -541,7 +565,11 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
||||
f.add_account_move_line_id = receivable1
|
||||
self.assertFalse(f.add_account_move_line_id)
|
||||
self.assertTrue(bank_stmt_line.can_reconcile)
|
||||
number_of_lines = len(bank_stmt_line.reconcile_data_info["data"])
|
||||
bank_stmt_line.reconcile_bank_line()
|
||||
self.assertEqual(
|
||||
number_of_lines, len(bank_stmt_line.reconcile_data_info["data"])
|
||||
)
|
||||
self.assertIn(
|
||||
self.bank_journal_euro.suspense_account_id,
|
||||
bank_stmt_line.mapped("move_id.line_ids.account_id"),
|
||||
@@ -1018,7 +1046,11 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
||||
self.assertFalse(f.add_account_move_line_id)
|
||||
self.assertTrue(f.can_reconcile)
|
||||
self.assertTrue(bank_stmt_line.can_reconcile)
|
||||
number_of_lines = len(bank_stmt_line.reconcile_data_info["data"])
|
||||
bank_stmt_line.reconcile_bank_line()
|
||||
self.assertEqual(
|
||||
number_of_lines, len(bank_stmt_line.reconcile_data_info["data"])
|
||||
)
|
||||
self.assertEqual(0, inv1.amount_residual)
|
||||
self.assertTrue(
|
||||
inv1.line_ids.filtered(
|
||||
|
||||
Reference in New Issue
Block a user