From 78e84abfa3745ee30858a0c5b65ee202678ac8e6 Mon Sep 17 00:00:00 2001 From: Laetitia Da Costa Date: Wed, 6 Mar 2024 15:55:01 +0100 Subject: [PATCH] [ADD]membership_invoice_payment_mode: add payment mode in membership invoice wizard --- membership_invoice_payment_mode/.gitignore | 2 + membership_invoice_payment_mode/README.rst | 44 +++++++++++++++++++ membership_invoice_payment_mode/__init__.py | 1 + .../__manifest__.py | 32 ++++++++++++++ .../wizard/__init__.py | 1 + .../wizard/membership_invoice.py | 22 ++++++++++ .../wizard/membership_invoice_views.xml | 14 ++++++ 7 files changed, 116 insertions(+) create mode 100644 membership_invoice_payment_mode/.gitignore create mode 100644 membership_invoice_payment_mode/README.rst create mode 100644 membership_invoice_payment_mode/__init__.py create mode 100644 membership_invoice_payment_mode/__manifest__.py create mode 100644 membership_invoice_payment_mode/wizard/__init__.py create mode 100644 membership_invoice_payment_mode/wizard/membership_invoice.py create mode 100644 membership_invoice_payment_mode/wizard/membership_invoice_views.xml diff --git a/membership_invoice_payment_mode/.gitignore b/membership_invoice_payment_mode/.gitignore new file mode 100644 index 0000000..6da5887 --- /dev/null +++ b/membership_invoice_payment_mode/.gitignore @@ -0,0 +1,2 @@ +*.*~ +*pyc diff --git a/membership_invoice_payment_mode/README.rst b/membership_invoice_payment_mode/README.rst new file mode 100644 index 0000000..25abffb --- /dev/null +++ b/membership_invoice_payment_mode/README.rst @@ -0,0 +1,44 @@ +=========== +membership_invoice_payment_mode +=========== + +This module add the payment mode to the membership invoice wizard. +The payment mode is added to the created invoice + +Installation +============ + +Just install membership_invoice_payment_mode, all dependencies will be installed by default. + +Known issues / Roadmap +====================== + +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. + +Credits +======= + +Images +------ + +Contributors +------------ + +* Élabore Teams + +Funders +------- + +The development of this module has been financially supported by: +* Élabore (https://elabore.coop) + +Maintainer +---------- + +This module is maintained by Élabore. diff --git a/membership_invoice_payment_mode/__init__.py b/membership_invoice_payment_mode/__init__.py new file mode 100644 index 0000000..4027237 --- /dev/null +++ b/membership_invoice_payment_mode/__init__.py @@ -0,0 +1 @@ +from . import wizard diff --git a/membership_invoice_payment_mode/__manifest__.py b/membership_invoice_payment_mode/__manifest__.py new file mode 100644 index 0000000..debb315 --- /dev/null +++ b/membership_invoice_payment_mode/__manifest__.py @@ -0,0 +1,32 @@ +# Copyright 2020 Lokavaluto () +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + "name": "membersip_invoice_payment_mode", + "version": "12.0.1.0.0", + "author": "Élabore", + "maintainer": "False", + "website": "elabore.coop", + "license": "", + "category": "", + "summary": "Add payment mode in merbership invoice wizard", + # any module necessary for this one to work correctly + "depends": [ + "account_payment_mode", + ], + "external_dependencies": { + "python": [], + }, + # always loaded + "data": [ + "wizard/membership_invoice_views.xml", + ], + # only loaded in demonstration mode + "demo": [], + "js": [], + "css": [], + "qweb": [], + "installable": True, + "auto_install": False, + "application": False, +} diff --git a/membership_invoice_payment_mode/wizard/__init__.py b/membership_invoice_payment_mode/wizard/__init__.py new file mode 100644 index 0000000..39e9003 --- /dev/null +++ b/membership_invoice_payment_mode/wizard/__init__.py @@ -0,0 +1 @@ +from . import membership_invoice \ No newline at end of file diff --git a/membership_invoice_payment_mode/wizard/membership_invoice.py b/membership_invoice_payment_mode/wizard/membership_invoice.py new file mode 100644 index 0000000..7ab25ef --- /dev/null +++ b/membership_invoice_payment_mode/wizard/membership_invoice.py @@ -0,0 +1,22 @@ +from odoo import fields, models + + +class MembershipInvoice(models.TransientModel): + _inherit = "membership.invoice" + + payment_mode_id = fields.Many2one( + comodel_name='account.payment.mode', string="Payment Mode", + domain=[("payment_type", "=", 'inbound')], + ) + + def membership_invoice(self): + res = super(MembershipInvoice, self).membership_invoice() + invoice_ids = None + for d in res['domain']: + if d[0] == 'id' and d[1] == 'in': + invoice_ids = d[2] + if invoice_ids: + self.env['account.invoice'].browse(invoice_ids).write({ + 'payment_mode_id':self.payment_mode_id.id, + }) + return res diff --git a/membership_invoice_payment_mode/wizard/membership_invoice_views.xml b/membership_invoice_payment_mode/wizard/membership_invoice_views.xml new file mode 100644 index 0000000..7e0d4b9 --- /dev/null +++ b/membership_invoice_payment_mode/wizard/membership_invoice_views.xml @@ -0,0 +1,14 @@ + + + + + membership.invoice.team_idview.form + membership.invoice + + + + + + + + \ No newline at end of file