From 6b0e4df4308789a669fcd5a2a53b0a3c9c6f623c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Tue, 19 Sep 2023 16:18:29 +0200 Subject: [PATCH] [IMP] account_banking_mandate: Allow to set a specific mandate reference or sequence --- account_banking_mandate/README.rst | 2 +- account_banking_mandate/__manifest__.py | 2 +- .../models/account_banking_mandate.py | 6 +-- .../static/description/index.html | 2 +- account_banking_mandate/tests/test_mandate.py | 45 +++++++++---------- .../views/account_banking_mandate_view.xml | 2 +- 6 files changed, 29 insertions(+), 30 deletions(-) diff --git a/account_banking_mandate/README.rst b/account_banking_mandate/README.rst index 49f848343..290885447 100644 --- a/account_banking_mandate/README.rst +++ b/account_banking_mandate/README.rst @@ -7,7 +7,7 @@ Account Banking Mandate !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:65a46ee9619fe8b739d955186a289a1fe533a2aab227896d9eb915f21c05ce58 + !! source digest: sha256:4b5a2b5a27bca9e269d073e647484476b859ac1ed53a533129bf680c40304026 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png diff --git a/account_banking_mandate/__manifest__.py b/account_banking_mandate/__manifest__.py index 134457404..23a3fd54c 100644 --- a/account_banking_mandate/__manifest__.py +++ b/account_banking_mandate/__manifest__.py @@ -7,7 +7,7 @@ { "name": "Account Banking Mandate", "summary": "Banking mandates", - "version": "16.0.1.1.0", + "version": "16.0.1.1.1", "development_status": "Production/Stable", "license": "AGPL-3", "author": "Compassion CH, " diff --git a/account_banking_mandate/models/account_banking_mandate.py b/account_banking_mandate/models/account_banking_mandate.py index 6eea0682e..4eb898ddf 100644 --- a/account_banking_mandate/models/account_banking_mandate.py +++ b/account_banking_mandate/models/account_banking_mandate.py @@ -60,7 +60,7 @@ class AccountBankingMandate(models.Model): required=True, default=lambda self: self.env.company, ) - unique_mandate_reference = fields.Char(tracking=10, copy=False) + unique_mandate_reference = fields.Char(tracking=10, copy=False, default="/") signature_date = fields.Date( string="Date of Signature of the Mandate", tracking=50, @@ -176,8 +176,8 @@ class AccountBankingMandate(models.Model): @api.model_create_multi def create(self, vals_list): for vals in vals_list: - unique_mandate_reference = vals.get("unique_mandate_reference") - if not unique_mandate_reference or unique_mandate_reference == "New": + unique_mandate_reference = vals.get("unique_mandate_reference", "/") + if unique_mandate_reference == "/": vals["unique_mandate_reference"] = ( self.env["ir.sequence"].next_by_code("account.banking.mandate") or "New" diff --git a/account_banking_mandate/static/description/index.html b/account_banking_mandate/static/description/index.html index 4fd937f8d..6552b0d2b 100644 --- a/account_banking_mandate/static/description/index.html +++ b/account_banking_mandate/static/description/index.html @@ -367,7 +367,7 @@ ul.auto-toc { !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:65a46ee9619fe8b739d955186a289a1fe533a2aab227896d9eb915f21c05ce58 +!! source digest: sha256:4b5a2b5a27bca9e269d073e647484476b859ac1ed53a533129bf680c40304026 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Production/Stable License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds a generic model for banking mandates. diff --git a/account_banking_mandate/tests/test_mandate.py b/account_banking_mandate/tests/test_mandate.py index c8f80cb03..4862738da 100644 --- a/account_banking_mandate/tests/test_mandate.py +++ b/account_banking_mandate/tests/test_mandate.py @@ -124,9 +124,8 @@ class TestMandate(TransactionCase): def test_mandate_reference_03(self): """ - Test case: create a mandate with "New" as reference - Expected result: the reference of the created mandate is not empty and - is not "New" + Test case: create a mandate with "TEST" as reference + Expected result: the reference of the created mandate is "TEST" """ bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") mandate = self.env["account.banking.mandate"].create( @@ -134,15 +133,32 @@ class TestMandate(TransactionCase): "partner_bank_id": bank_account.id, "signature_date": "2015-01-01", "company_id": self.company.id, - "unique_mandate_reference": "New", + "unique_mandate_reference": "TEST", } ) self.assertTrue(mandate.unique_mandate_reference) - self.assertNotEqual(mandate.unique_mandate_reference, "New") + self.assertEqual(mandate.unique_mandate_reference, "TEST") + + def test_mandate_reference_04(self): + """ + Test case: create a mandate with "/" as reference + Expected result: the reference of the created mandate is not "/" + """ + bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") + mandate = self.env["account.banking.mandate"].create( + { + "partner_bank_id": bank_account.id, + "signature_date": "2015-01-01", + "company_id": self.company.id, + "unique_mandate_reference": "/", + } + ) + self.assertTrue(mandate.unique_mandate_reference) + self.assertNotEqual(mandate.unique_mandate_reference, "/") def test_mandate_reference_05(self): """ - Test case: create a mandate with False as reference + Test case: create a mandate without reference Expected result: the reference of the created mandate is not empty """ bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") @@ -151,23 +167,6 @@ class TestMandate(TransactionCase): "partner_bank_id": bank_account.id, "signature_date": "2015-01-01", "company_id": self.company.id, - "unique_mandate_reference": False, - } - ) - self.assertTrue(mandate.unique_mandate_reference) - - def test_mandate_reference_06(self): - """ - Test case: create a mandate with a empty string as reference - Expected result: the reference of the created mandate is not empty - """ - bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") - mandate = self.env["account.banking.mandate"].create( - { - "partner_bank_id": bank_account.id, - "signature_date": "2015-01-01", - "company_id": self.company.id, - "unique_mandate_reference": "", } ) self.assertTrue(mandate.unique_mandate_reference) diff --git a/account_banking_mandate/views/account_banking_mandate_view.xml b/account_banking_mandate/views/account_banking_mandate_view.xml index ebde21253..5b2335e90 100644 --- a/account_banking_mandate/views/account_banking_mandate_view.xml +++ b/account_banking_mandate/views/account_banking_mandate_view.xml @@ -50,7 +50,7 @@