From 7350fab508773a19543cc67a8bb915c2f1d2e63b Mon Sep 17 00:00:00 2001
From: sygel
Date: Wed, 5 Jun 2024 19:15:41 +0200
Subject: [PATCH 1/6] [ADD] account_vendor_bank_account_default
---
.../README.rst | 120 +++++
.../__init__.py | 3 +
.../__manifest__.py | 22 +
.../account_vendor_bank_account_default.pot | 42 ++
.../models/__init__.py | 4 +
.../models/account_move.py | 25 +
.../models/res_partner.py | 43 ++
.../pyproject.toml | 3 +
.../readme/CONFIGURE.md | 11 +
.../readme/CONTRIBUTORS.md | 4 +
.../readme/DESCRIPTION.md | 1 +
.../readme/ROADMAP.md | 1 +
.../readme/USAGE.md | 3 +
.../static/description/icon.png | Bin 0 -> 9455 bytes
.../static/description/icon.svg | 79 +++
.../static/description/index.html | 466 ++++++++++++++++++
.../tests/__init__.py | 3 +
...est_account_vendor_bank_account_default.py | 112 +++++
.../views/res_partner_views.xml | 24 +
19 files changed, 966 insertions(+)
create mode 100644 account_vendor_bank_account_default/README.rst
create mode 100644 account_vendor_bank_account_default/__init__.py
create mode 100644 account_vendor_bank_account_default/__manifest__.py
create mode 100644 account_vendor_bank_account_default/i18n/account_vendor_bank_account_default.pot
create mode 100644 account_vendor_bank_account_default/models/__init__.py
create mode 100644 account_vendor_bank_account_default/models/account_move.py
create mode 100644 account_vendor_bank_account_default/models/res_partner.py
create mode 100644 account_vendor_bank_account_default/pyproject.toml
create mode 100755 account_vendor_bank_account_default/readme/CONFIGURE.md
create mode 100755 account_vendor_bank_account_default/readme/CONTRIBUTORS.md
create mode 100755 account_vendor_bank_account_default/readme/DESCRIPTION.md
create mode 100755 account_vendor_bank_account_default/readme/ROADMAP.md
create mode 100755 account_vendor_bank_account_default/readme/USAGE.md
create mode 100755 account_vendor_bank_account_default/static/description/icon.png
create mode 100755 account_vendor_bank_account_default/static/description/icon.svg
create mode 100644 account_vendor_bank_account_default/static/description/index.html
create mode 100644 account_vendor_bank_account_default/tests/__init__.py
create mode 100644 account_vendor_bank_account_default/tests/test_account_vendor_bank_account_default.py
create mode 100644 account_vendor_bank_account_default/views/res_partner_views.xml
diff --git a/account_vendor_bank_account_default/README.rst b/account_vendor_bank_account_default/README.rst
new file mode 100644
index 00000000000..f235773ef32
--- /dev/null
+++ b/account_vendor_bank_account_default/README.rst
@@ -0,0 +1,120 @@
+===================================
+Account Vendor Bank Account Default
+===================================
+
+..
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! This file is generated by oca-gen-addon-readme !!
+ !! changes will be overwritten. !!
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! source digest: sha256:469bab1b746f6b2716cfd595ae29fdbadc667a433546b1c2ee95c89817221d1a
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
+ :target: https://odoo-community.org/page/development-status
+ :alt: Beta
+.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--payment-lightgray.png?logo=github
+ :target: https://github.com/OCA/bank-payment/tree/17.0/account_vendor_bank_account_default
+ :alt: OCA/bank-payment
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+ :target: https://translation.odoo-community.org/projects/bank-payment-17-0/bank-payment-17-0-account_vendor_bank_account_default
+ :alt: Translate me on Weblate
+.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/bank-payment&target_branch=17.0
+ :alt: Try me on Runboat
+
+|badge1| |badge2| |badge3| |badge4| |badge5|
+
+This module allows you to set a default bank account on partners for
+their vendor bills.
+
+**Table of contents**
+
+.. contents::
+ :local:
+
+Configuration
+=============
+
+To configure this module, you need to:
+
+- Go to a partner form view, and edit the Default Bank Account in the
+ Sales and Purchase tab. The partner must be of type 'company', or an
+ individual without a parent company.
+
+ **Note:** If you do not set this value, it will be equal to the first
+ bank account created in the contact. This is the standard behaviour
+ of Odoo
+
+- You can disable the default bank account option at contact level,
+ unmarking the "Has Default Bank Account" check.
+
+Usage
+=====
+
+To use this module, you need to:
+
+1. Create a vendor bill and select a partner with a default bank
+ account. Its recipient bank account will be the default one.
+
+Known issues / Roadmap
+======================
+
+- This module depends on account_payment_partner. If the payment mode
+ of the invoice has a payment method that does not require a bank
+ account, the default bank account will be empty.
+
+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 to smash it by providing a detailed and welcomed
+`feedback `_.
+
+Do not contact contributors directly about support or help with technical issues.
+
+Credits
+=======
+
+Authors
+-------
+
+* Sygel
+
+Contributors
+------------
+
+- `Sygel `__:
+
+ - Harald Panten
+ - Valentin Vinagre
+ - Alberto Martínez
+
+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-tisho99| image:: https://github.com/tisho99.png?size=40px
+ :target: https://github.com/tisho99
+ :alt: tisho99
+
+Current `maintainer `__:
+
+|maintainer-tisho99|
+
+This module is part of the `OCA/bank-payment `_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/account_vendor_bank_account_default/__init__.py b/account_vendor_bank_account_default/__init__.py
new file mode 100644
index 00000000000..31660d6a965
--- /dev/null
+++ b/account_vendor_bank_account_default/__init__.py
@@ -0,0 +1,3 @@
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from . import models
diff --git a/account_vendor_bank_account_default/__manifest__.py b/account_vendor_bank_account_default/__manifest__.py
new file mode 100644
index 00000000000..8e2a745523d
--- /dev/null
+++ b/account_vendor_bank_account_default/__manifest__.py
@@ -0,0 +1,22 @@
+# Copyright 2024 Alberto Martínez
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+{
+ "name": "Account Vendor Bank Account Default",
+ "summary": "Set a default bank account on partners for their vendor bills",
+ "version": "17.0.1.0.0",
+ "development_status": "Beta",
+ "category": "Banking addons",
+ "website": "https://github.com/OCA/bank-payment",
+ "author": "Sygel, Odoo Community Association (OCA)",
+ "maintainers": ["tisho99"],
+ "license": "AGPL-3",
+ "application": False,
+ "installable": True,
+ "depends": [
+ "account",
+ "account_payment_partner",
+ ],
+ "data": [
+ "views/res_partner_views.xml",
+ ],
+}
diff --git a/account_vendor_bank_account_default/i18n/account_vendor_bank_account_default.pot b/account_vendor_bank_account_default/i18n/account_vendor_bank_account_default.pot
new file mode 100644
index 00000000000..4f641a0eefd
--- /dev/null
+++ b/account_vendor_bank_account_default/i18n/account_vendor_bank_account_default.pot
@@ -0,0 +1,42 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_vendor_bank_account_default
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 17.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_vendor_bank_account_default
+#: model:ir.model,name:account_vendor_bank_account_default.model_res_partner
+msgid "Contact"
+msgstr ""
+
+#. module: account_vendor_bank_account_default
+#: model:ir.model.fields,field_description:account_vendor_bank_account_default.field_res_partner__default_bank_id
+#: model:ir.model.fields,field_description:account_vendor_bank_account_default.field_res_users__default_bank_id
+msgid "Default Bank Account"
+msgstr ""
+
+#. module: account_vendor_bank_account_default
+#: model:ir.model.fields,field_description:account_vendor_bank_account_default.field_res_partner__has_default_bank_id
+#: model:ir.model.fields,field_description:account_vendor_bank_account_default.field_res_users__has_default_bank_id
+msgid "Has Default Bank Account"
+msgstr ""
+
+#. module: account_vendor_bank_account_default
+#: model:ir.model,name:account_vendor_bank_account_default.model_account_move
+msgid "Journal Entry"
+msgstr ""
+
+#. module: account_vendor_bank_account_default
+#: model:ir.model.fields,field_description:account_vendor_bank_account_default.field_res_partner__user_default_bank_id
+#: model:ir.model.fields,field_description:account_vendor_bank_account_default.field_res_users__user_default_bank_id
+msgid "User Default Bank Account"
+msgstr ""
diff --git a/account_vendor_bank_account_default/models/__init__.py b/account_vendor_bank_account_default/models/__init__.py
new file mode 100644
index 00000000000..77f8c6e4f8d
--- /dev/null
+++ b/account_vendor_bank_account_default/models/__init__.py
@@ -0,0 +1,4 @@
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from . import account_move
+from . import res_partner
diff --git a/account_vendor_bank_account_default/models/account_move.py b/account_vendor_bank_account_default/models/account_move.py
new file mode 100644
index 00000000000..49d550a3423
--- /dev/null
+++ b/account_vendor_bank_account_default/models/account_move.py
@@ -0,0 +1,25 @@
+# Copyright 2024 Alberto Martínez
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from odoo import models
+
+
+class AccountMove(models.Model):
+ _inherit = "account.move"
+
+ def _compute_partner_bank_id(self):
+ res = super()._compute_partner_bank_id()
+ for move in self:
+ payment_mode = move.payment_mode_id
+ if (
+ payment_mode
+ and move.move_type == "in_invoice"
+ and payment_mode.payment_type == "outbound"
+ and payment_mode.payment_method_id.bank_account_required
+ ):
+ move.partner_bank_id = (
+ move.bank_partner_id.default_bank_id
+ if move.bank_partner_id.has_default_bank_id
+ else False
+ )
+ return res
diff --git a/account_vendor_bank_account_default/models/res_partner.py b/account_vendor_bank_account_default/models/res_partner.py
new file mode 100644
index 00000000000..e06ca22a3d7
--- /dev/null
+++ b/account_vendor_bank_account_default/models/res_partner.py
@@ -0,0 +1,43 @@
+# Copyright 2024 Alberto Martínez
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from odoo import api, fields, models
+
+
+class ResPartner(models.Model):
+ _inherit = "res.partner"
+
+ default_bank_id = fields.Many2one(
+ string="Default Bank Account",
+ comodel_name="res.partner.bank",
+ domain="[('partner_id', '=', commercial_partner_id)]",
+ compute="_compute_default_bank_id",
+ inverse="_inverse_default_bank_id",
+ store=True,
+ readonly=False,
+ )
+ user_default_bank_id = fields.Many2one(
+ comodel_name="res.partner.bank",
+ string="User Default Bank Account",
+ )
+ has_default_bank_id = fields.Boolean(
+ string="Has Default Bank Account",
+ default=True,
+ )
+
+ @api.depends("bank_ids", "user_default_bank_id")
+ def _compute_default_bank_id(self):
+ for rec in self:
+ rec.default_bank_id = rec.user_default_bank_id or rec.bank_ids[:1]
+
+ def _inverse_default_bank_id(self):
+ for rec in self:
+ rec.user_default_bank_id = rec.default_bank_id
+ if not rec.user_default_bank_id:
+ rec._compute_default_bank_id()
+
+ @api.model
+ def _commercial_fields(self):
+ res = super()._commercial_fields()
+ res += ["default_bank_id", "user_default_bank_id", "has_default_bank_id"]
+ return res
diff --git a/account_vendor_bank_account_default/pyproject.toml b/account_vendor_bank_account_default/pyproject.toml
new file mode 100644
index 00000000000..4231d0cccb3
--- /dev/null
+++ b/account_vendor_bank_account_default/pyproject.toml
@@ -0,0 +1,3 @@
+[build-system]
+requires = ["whool"]
+build-backend = "whool.buildapi"
diff --git a/account_vendor_bank_account_default/readme/CONFIGURE.md b/account_vendor_bank_account_default/readme/CONFIGURE.md
new file mode 100755
index 00000000000..efbe8384d4c
--- /dev/null
+++ b/account_vendor_bank_account_default/readme/CONFIGURE.md
@@ -0,0 +1,11 @@
+To configure this module, you need to:
+
+- Go to a partner form view, and edit the Default Bank Account in the
+ Sales and Purchase tab. The partner must be of type 'company', or an
+ individual without a parent company.
+
+ **Note:** If you do not set this value, it will be equal to the first
+ bank account created in the contact. This is the standard behaviour of Odoo
+
+- You can disable the default bank account option at contact level, unmarking the
+ "Has Default Bank Account" check.
diff --git a/account_vendor_bank_account_default/readme/CONTRIBUTORS.md b/account_vendor_bank_account_default/readme/CONTRIBUTORS.md
new file mode 100755
index 00000000000..e614fca54fe
--- /dev/null
+++ b/account_vendor_bank_account_default/readme/CONTRIBUTORS.md
@@ -0,0 +1,4 @@
+- [Sygel](https://www.sygel.es):
+ - Harald Panten
+ - Valentin Vinagre
+ - Alberto Martínez
diff --git a/account_vendor_bank_account_default/readme/DESCRIPTION.md b/account_vendor_bank_account_default/readme/DESCRIPTION.md
new file mode 100755
index 00000000000..d0ea2ffe723
--- /dev/null
+++ b/account_vendor_bank_account_default/readme/DESCRIPTION.md
@@ -0,0 +1 @@
+This module allows you to set a default bank account on partners for their vendor bills.
diff --git a/account_vendor_bank_account_default/readme/ROADMAP.md b/account_vendor_bank_account_default/readme/ROADMAP.md
new file mode 100755
index 00000000000..03c68654901
--- /dev/null
+++ b/account_vendor_bank_account_default/readme/ROADMAP.md
@@ -0,0 +1 @@
+- This module depends on account_payment_partner. If the payment mode of the invoice has a payment method that does not require a bank account, the default bank account will be empty.
diff --git a/account_vendor_bank_account_default/readme/USAGE.md b/account_vendor_bank_account_default/readme/USAGE.md
new file mode 100755
index 00000000000..d4f7919c114
--- /dev/null
+++ b/account_vendor_bank_account_default/readme/USAGE.md
@@ -0,0 +1,3 @@
+To use this module, you need to:
+
+1. Create a vendor bill and select a partner with a default bank account. Its recipient bank account will be the default one.
diff --git a/account_vendor_bank_account_default/static/description/icon.png b/account_vendor_bank_account_default/static/description/icon.png
new file mode 100755
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
diff --git a/account_vendor_bank_account_default/static/description/icon.svg b/account_vendor_bank_account_default/static/description/icon.svg
new file mode 100755
index 00000000000..a7a26d0932a
--- /dev/null
+++ b/account_vendor_bank_account_default/static/description/icon.svg
@@ -0,0 +1,79 @@
+
+
+
+
diff --git a/account_vendor_bank_account_default/static/description/index.html b/account_vendor_bank_account_default/static/description/index.html
new file mode 100644
index 00000000000..88b431a011b
--- /dev/null
+++ b/account_vendor_bank_account_default/static/description/index.html
@@ -0,0 +1,466 @@
+
+
+
+
+
+Account Vendor Bank Account Default
+
+
+
+
+
Account Vendor Bank Account Default
+
+
+
+
This module allows you to set a default bank account on partners for
+their vendor bills.
Go to a partner form view, and edit the Default Bank Account in the
+Sales and Purchase tab. The partner must be of type ‘company’, or an
+individual without a parent company.
+
Note: If you do not set this value, it will be equal to the first
+bank account created in the contact. This is the standard behaviour
+of Odoo
+
+
You can disable the default bank account option at contact level,
+unmarking the “Has Default Bank Account” check.
This module depends on account_payment_partner. If the payment mode
+of the invoice has a payment method that does not require a bank
+account, the default bank account will be empty.
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 to smash it by providing a detailed and welcomed
+feedback.
+
Do not contact contributors directly about support or help with technical issues.
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.
This module depends on account_payment_partner. If the payment mode
-of the invoice has a payment method that does not require a bank
-account, the default bank account will be empty.
+
This module depends on account_payment_partner. If the payment mode of
+the invoice has a payment method that does not require a bank account,
+the default bank account will be empty.
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 to smash it by providing a detailed and welcomed
-feedback.