From 4b68588e31e62816a7f1508ac76aa7ebf0f4c990 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Mon, 8 Aug 2022 00:05:18 +0200 Subject: [PATCH 1/6] Add module account_statement_import_base The 2 modules account_statement_import_online and account_statement_import depend on account_statement_import_base (and not on each other) and share common code, in particular a hook to update the statement line. So we can now have reconciliation modules that use this hook and therefore work both on file import and online import. More details on https://github.com/OCA/bank-statement-import/issues/481. Improve bank statement line form view and journal form view. --- account_statement_import_base/README.rst | 1 + account_statement_import_base/__init__.py | 1 + account_statement_import_base/__manifest__.py | 19 +++++ .../models/__init__.py | 2 + .../models/account_bank_statement_line.py | 22 ++++++ .../models/account_journal.py | 69 +++++++++++++++++++ .../readme/CONTRIBUTORS.rst | 1 + .../readme/DESCRIPTION.rst | 4 ++ .../views/account_bank_statement_line.xml | 61 ++++++++++++++++ 9 files changed, 180 insertions(+) create mode 100644 account_statement_import_base/README.rst create mode 100644 account_statement_import_base/__init__.py create mode 100644 account_statement_import_base/__manifest__.py create mode 100644 account_statement_import_base/models/__init__.py create mode 100644 account_statement_import_base/models/account_bank_statement_line.py create mode 100644 account_statement_import_base/models/account_journal.py create mode 100644 account_statement_import_base/readme/CONTRIBUTORS.rst create mode 100644 account_statement_import_base/readme/DESCRIPTION.rst create mode 100644 account_statement_import_base/views/account_bank_statement_line.xml diff --git a/account_statement_import_base/README.rst b/account_statement_import_base/README.rst new file mode 100644 index 00000000..b04982bf --- /dev/null +++ b/account_statement_import_base/README.rst @@ -0,0 +1 @@ +Will be autogenerated from the readme subdir diff --git a/account_statement_import_base/__init__.py b/account_statement_import_base/__init__.py new file mode 100644 index 00000000..0650744f --- /dev/null +++ b/account_statement_import_base/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/account_statement_import_base/__manifest__.py b/account_statement_import_base/__manifest__.py new file mode 100644 index 00000000..0cfbf924 --- /dev/null +++ b/account_statement_import_base/__manifest__.py @@ -0,0 +1,19 @@ +# Copyright 2022 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre +# Licence LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl-3.0). + +{ + "name": "Base module for Bank Statement Import", + "category": "Accounting", + "version": "14.0.1.0.0", + "license": "LGPL-3", + "depends": ["account"], + "author": "Akretion, Odoo Community Association (OCA)", + "maintainers": ["alexis-via"], + "development_status": "Mature", + "website": "https://github.com/OCA/bank-statement-import", + "data": [ + "views/account_bank_statement_line.xml", + ], + "installable": True, +} diff --git a/account_statement_import_base/models/__init__.py b/account_statement_import_base/models/__init__.py new file mode 100644 index 00000000..4c252e45 --- /dev/null +++ b/account_statement_import_base/models/__init__.py @@ -0,0 +1,2 @@ +from . import account_bank_statement_line +from . import account_journal diff --git a/account_statement_import_base/models/account_bank_statement_line.py b/account_statement_import_base/models/account_bank_statement_line.py new file mode 100644 index 00000000..0058331f --- /dev/null +++ b/account_statement_import_base/models/account_bank_statement_line.py @@ -0,0 +1,22 @@ +# Copyright 2022 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). + +from odoo import fields, models + + +class AccountBankStatementLine(models.Model): + _inherit = "account.bank.statement.line" + + # Ensure transactions can be imported only once + # if the import format provides unique transaction IDs + unique_import_id = fields.Char(string="Import ID", readonly=True, copy=False) + raw_data = fields.Text(readonly=True, copy=False) + + _sql_constraints = [ + ( + "unique_import_id", + "unique(unique_import_id)", + "A bank account transaction can be imported only once!", + ) + ] diff --git a/account_statement_import_base/models/account_journal.py b/account_statement_import_base/models/account_journal.py new file mode 100644 index 00000000..3080fe74 --- /dev/null +++ b/account_statement_import_base/models/account_journal.py @@ -0,0 +1,69 @@ +# Copyright 2022 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). + +from odoo import api, models + +from odoo.addons.base.models.res_bank import sanitize_account_number + + +class AccountJournal(models.Model): + _inherit = "account.journal" + + def _statement_line_import_speeddict(self): + """This method is designed to be inherited by reconciliation modules. + These modules can take advantage of this method to pre-fetch data + that will later be used for many statement lines (to avoid + searching data for each statement line). + The goal is to improve performances. + """ + self.ensure_one() + speeddict = {"account_number": {}} + partner_banks = self.env["res.partner.bank"].search_read( + [("company_id", "in", (False, self.company_id.id))], + ["acc_number", "partner_id"], + ) + for partner_bank in partner_banks: + speeddict["account_number"][partner_bank["acc_number"]] = { + "partner_id": partner_bank["partner_id"][0], + "partner_bank_id": partner_bank["id"], + } + return speeddict + + def _statement_line_import_update_hook(self, st_line_vals, speeddict): + """This method is designed to be inherited by reconciliation modules. + In this method you can: + - update the partner of the line by writing st_line_vals['partner_id'] + - set an automated counter-part via counterpart_account_id by writing + st_line_vals['counterpart_account_id'] + - do anythink you want with the statement line + """ + self.ensure_one() + if st_line_vals.get("account_number"): + st_line_vals["account_number"] = self._sanitize_bank_account_number( + st_line_vals["account_number"] + ) + if not st_line_vals.get("partner_id") and speeddict["account_number"].get( + st_line_vals["account_number"] + ): + st_line_vals.update( + speeddict["account_number"][st_line_vals["account_number"]] + ) + + def _statement_line_import_update_unique_import_id( + self, st_line_vals, account_number + ): + self.ensure_one() + if st_line_vals.get("unique_import_id"): + sanitized_acc_number = self._sanitize_bank_account_number(account_number) + st_line_vals["unique_import_id"] = ( + (sanitized_acc_number and sanitized_acc_number + "-" or "") + + str(self.id) + + "-" + + st_line_vals["unique_import_id"] + ) + + @api.model + def _sanitize_bank_account_number(self, account_number): + """Hook for extension""" + return sanitize_account_number(account_number) diff --git a/account_statement_import_base/readme/CONTRIBUTORS.rst b/account_statement_import_base/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000..ff65d68c --- /dev/null +++ b/account_statement_import_base/readme/CONTRIBUTORS.rst @@ -0,0 +1 @@ +* Alexis de Lattre diff --git a/account_statement_import_base/readme/DESCRIPTION.rst b/account_statement_import_base/readme/DESCRIPTION.rst new file mode 100644 index 00000000..4bf07f19 --- /dev/null +++ b/account_statement_import_base/readme/DESCRIPTION.rst @@ -0,0 +1,4 @@ +This is a technical module designed to share code between 2 other modules: + +* **account_statement_import** that allows to import bank statements from files, +* **account_statement_import_online** that allows to import bank statements from webservices/APIs. diff --git a/account_statement_import_base/views/account_bank_statement_line.xml b/account_statement_import_base/views/account_bank_statement_line.xml new file mode 100644 index 00000000..f2067d07 --- /dev/null +++ b/account_statement_import_base/views/account_bank_statement_line.xml @@ -0,0 +1,61 @@ + + + + + + account.bank.statement.line + + + + not context.get('statement_line_main_view') + + + 2 + + + 1 + + + + 1 + + + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + From 480b2458046a6cd3eef83ebece6b3a1d70f5b8c7 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Wed, 10 Aug 2022 00:01:53 +0200 Subject: [PATCH 2/6] [ADD] module account_statement_import_file_reconciliation_widget account_statement_import_file_reconciliation_widget is a glue auto-install module between account_statement_import (will be renamed account_statement_import_file in v16) and account_reconciliation_widget. --- .../views/account_bank_statement_line.xml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/account_statement_import_base/views/account_bank_statement_line.xml b/account_statement_import_base/views/account_bank_statement_line.xml index f2067d07..090816e9 100644 --- a/account_statement_import_base/views/account_bank_statement_line.xml +++ b/account_statement_import_base/views/account_bank_statement_line.xml @@ -21,16 +21,6 @@ 1 - - - 1 - 1 From 8d92a452308ea8e2683623f10e90b0393b4a91de Mon Sep 17 00:00:00 2001 From: oca-ci Date: Thu, 29 Sep 2022 21:18:57 +0000 Subject: [PATCH 3/6] [UPD] Update account_statement_import_base.pot --- .../i18n/account_statement_import_base.pot | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 account_statement_import_base/i18n/account_statement_import_base.pot diff --git a/account_statement_import_base/i18n/account_statement_import_base.pot b/account_statement_import_base/i18n/account_statement_import_base.pot new file mode 100644 index 00000000..de4704d9 --- /dev/null +++ b/account_statement_import_base/i18n/account_statement_import_base.pot @@ -0,0 +1,68 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_statement_import_base +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: account_statement_import_base +#: model:ir.model.constraint,message:account_statement_import_base.constraint_account_bank_statement_line_unique_import_id +msgid "A bank account transaction can be imported only once!" +msgstr "" + +#. module: account_statement_import_base +#: model:ir.model,name:account_statement_import_base.model_account_bank_statement_line +msgid "Bank Statement Line" +msgstr "" + +#. module: account_statement_import_base +#: model:ir.model.fields,field_description:account_statement_import_base.field_account_bank_statement_line__display_name +#: model:ir.model.fields,field_description:account_statement_import_base.field_account_journal__display_name +msgid "Display Name" +msgstr "" + +#. module: account_statement_import_base +#: model:ir.model.fields,field_description:account_statement_import_base.field_account_bank_statement_line__id +#: model:ir.model.fields,field_description:account_statement_import_base.field_account_journal__id +msgid "ID" +msgstr "" + +#. module: account_statement_import_base +#: model:ir.model.fields,field_description:account_statement_import_base.field_account_bank_statement_line__unique_import_id +msgid "Import ID" +msgstr "" + +#. module: account_statement_import_base +#: model:ir.model,name:account_statement_import_base.model_account_journal +msgid "Journal" +msgstr "" + +#. module: account_statement_import_base +#: model:ir.model.fields,field_description:account_statement_import_base.field_account_bank_statement_line____last_update +#: model:ir.model.fields,field_description:account_statement_import_base.field_account_journal____last_update +msgid "Last Modified on" +msgstr "" + +#. module: account_statement_import_base +#: model_terms:ir.ui.view,arch_db:account_statement_import_base.view_bank_statement_line_form +msgid "Notes" +msgstr "" + +#. module: account_statement_import_base +#: model:ir.model.fields,field_description:account_statement_import_base.field_account_bank_statement_line__raw_data +#: model_terms:ir.ui.view,arch_db:account_statement_import_base.view_bank_statement_line_form +msgid "Raw Data" +msgstr "" + +#. module: account_statement_import_base +#: model_terms:ir.ui.view,arch_db:account_statement_import_base.view_bank_statement_line_form +msgid "Technical Information" +msgstr "" From 9f8769fa48029a0d840a24bc14755a21680d5ba4 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 29 Sep 2022 21:22:34 +0000 Subject: [PATCH 4/6] [UPD] README.rst --- account_statement_import_base/README.rst | 85 +++- .../static/description/index.html | 425 ++++++++++++++++++ 2 files changed, 509 insertions(+), 1 deletion(-) create mode 100644 account_statement_import_base/static/description/index.html diff --git a/account_statement_import_base/README.rst b/account_statement_import_base/README.rst index b04982bf..76b26025 100644 --- a/account_statement_import_base/README.rst +++ b/account_statement_import_base/README.rst @@ -1 +1,84 @@ -Will be autogenerated from the readme subdir +===================================== +Base module for Bank Statement Import +===================================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png + :target: https://odoo-community.org/page/development-status + :alt: Mature +.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png + :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html + :alt: License: LGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--statement--import-lightgray.png?logo=github + :target: https://github.com/OCA/bank-statement-import/tree/14.0/account_statement_import_base + :alt: OCA/bank-statement-import +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/bank-statement-import-14-0/bank-statement-import-14-0-account_statement_import_base + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/174/14.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This is a technical module designed to share code between 2 other modules: + +* **account_statement_import** that allows to import bank statements from files, +* **account_statement_import_online** that allows to import bank statements from webservices/APIs. + +**Table of contents** + +.. contents:: + :local: + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* Akretion + +Contributors +~~~~~~~~~~~~ + +* Alexis de Lattre + +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +.. |maintainer-alexis-via| image:: https://github.com/alexis-via.png?size=40px + :target: https://github.com/alexis-via + :alt: alexis-via + +Current `maintainer `__: + +|maintainer-alexis-via| + +This module is part of the `OCA/bank-statement-import `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/account_statement_import_base/static/description/index.html b/account_statement_import_base/static/description/index.html new file mode 100644 index 00000000..2dbc811c --- /dev/null +++ b/account_statement_import_base/static/description/index.html @@ -0,0 +1,425 @@ + + + + + + +Base module for Bank Statement Import + + + +
+

Base module for Bank Statement Import

+ + +

Mature License: LGPL-3 OCA/bank-statement-import Translate me on Weblate Try me on Runbot

+

This is a technical module designed to share code between 2 other modules:

+
    +
  • account_statement_import that allows to import bank statements from files,
  • +
  • account_statement_import_online that allows to import bank statements from webservices/APIs.
  • +
+

Table of contents

+ +
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • Akretion
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

Current maintainer:

+

alexis-via

+

This module is part of the OCA/bank-statement-import project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ + From 61f33a4a2c8165bf09c942c22cacc1d854a177ab Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 29 Sep 2022 21:22:35 +0000 Subject: [PATCH 5/6] [ADD] icon.png --- .../static/description/icon.png | Bin 0 -> 9455 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 account_statement_import_base/static/description/icon.png diff --git a/account_statement_import_base/static/description/icon.png b/account_statement_import_base/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 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 z 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 From f41ddac57fda9003b71cac223820381a2efbb9bb Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Thu, 19 Jan 2023 00:11:33 +0100 Subject: [PATCH 6/6] [MIG] account_statement_import_base v14 -> v16 --- account_statement_import_base/__manifest__.py | 4 +- .../views/account_bank_statement_line.xml | 50 +++++-------------- .../odoo/addons/account_statement_import_base | 1 + setup/account_statement_import_base/setup.py | 6 +++ 4 files changed, 22 insertions(+), 39 deletions(-) create mode 120000 setup/account_statement_import_base/odoo/addons/account_statement_import_base create mode 100644 setup/account_statement_import_base/setup.py diff --git a/account_statement_import_base/__manifest__.py b/account_statement_import_base/__manifest__.py index 0cfbf924..d5d78b39 100644 --- a/account_statement_import_base/__manifest__.py +++ b/account_statement_import_base/__manifest__.py @@ -5,9 +5,9 @@ { "name": "Base module for Bank Statement Import", "category": "Accounting", - "version": "14.0.1.0.0", + "version": "16.0.1.0.0", "license": "LGPL-3", - "depends": ["account"], + "depends": ["account_statement_base"], "author": "Akretion, Odoo Community Association (OCA)", "maintainers": ["alexis-via"], "development_status": "Mature", diff --git a/account_statement_import_base/views/account_bank_statement_line.xml b/account_statement_import_base/views/account_bank_statement_line.xml index 090816e9..d32bc344 100644 --- a/account_statement_import_base/views/account_bank_statement_line.xml +++ b/account_statement_import_base/views/account_bank_statement_line.xml @@ -6,45 +6,21 @@ --> - + account.bank.statement.line - + - - not context.get('statement_line_main_view') - - - 2 - - - 1 - - - 1 - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + diff --git a/setup/account_statement_import_base/odoo/addons/account_statement_import_base b/setup/account_statement_import_base/odoo/addons/account_statement_import_base new file mode 120000 index 00000000..431b0bc9 --- /dev/null +++ b/setup/account_statement_import_base/odoo/addons/account_statement_import_base @@ -0,0 +1 @@ +../../../../account_statement_import_base \ No newline at end of file diff --git a/setup/account_statement_import_base/setup.py b/setup/account_statement_import_base/setup.py new file mode 100644 index 00000000..28c57bb6 --- /dev/null +++ b/setup/account_statement_import_base/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +)