From 67490b7d95667d8258e16d4493465db2214b2bbc Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Tue, 14 Aug 2018 16:49:57 +0200 Subject: [PATCH 01/19] add ebics modules --- account_ebics_payment_order/README.rst | 23 ++++++++ account_ebics_payment_order/__init__.py | 5 ++ account_ebics_payment_order/__manifest__.py | 18 +++++++ .../models/__init__.py | 2 + .../models/account_payment_order.py | 51 ++++++++++++++++++ .../static/description/icon.png | Bin 0 -> 17137 bytes .../views/account_payment_order.xml | 18 +++++++ 7 files changed, 117 insertions(+) create mode 100644 account_ebics_payment_order/README.rst create mode 100644 account_ebics_payment_order/__init__.py create mode 100644 account_ebics_payment_order/__manifest__.py create mode 100644 account_ebics_payment_order/models/__init__.py create mode 100644 account_ebics_payment_order/models/account_payment_order.py create mode 100644 account_ebics_payment_order/static/description/icon.png create mode 100644 account_ebics_payment_order/views/account_payment_order.xml diff --git a/account_ebics_payment_order/README.rst b/account_ebics_payment_order/README.rst new file mode 100644 index 0000000..2109413 --- /dev/null +++ b/account_ebics_payment_order/README.rst @@ -0,0 +1,23 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: https://www.gnu.org/licenses/agpl + :alt: License: AGPL-3 + +============================== +Upload Payment Order via EBICS +============================== + +This module allows to upload a Payment Order to the bank via the EBICS protocol. + +Installation +============ + +This module depends upon the following modules (cf. apps.odoo.com): + +- account_ebics +- account_payment_order + +Usage +===== + +Create your Payment Order and generate the bank file. +Upload the generated file via the 'EBICS Upload' button on the payment order. diff --git a/account_ebics_payment_order/__init__.py b/account_ebics_payment_order/__init__.py new file mode 100644 index 0000000..563e77c --- /dev/null +++ b/account_ebics_payment_order/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# Copyright 2009-2017 Noviat. +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import models diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py new file mode 100644 index 0000000..b7fd1d4 --- /dev/null +++ b/account_ebics_payment_order/__manifest__.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +# Copyright 2009-2017 Noviat. +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + 'name': 'Upload Payment Order via EBICS', + 'version': '10.0.1.0.0', + 'license': 'AGPL-3', + 'author': 'Noviat', + 'category': 'Accounting & Finance', + 'depends': [ + 'account_ebics', + 'account_payment_order'], + 'data': [ + 'views/account_payment_order.xml', + ], + 'installable': True, +} diff --git a/account_ebics_payment_order/models/__init__.py b/account_ebics_payment_order/models/__init__.py new file mode 100644 index 0000000..66e826d --- /dev/null +++ b/account_ebics_payment_order/models/__init__.py @@ -0,0 +1,2 @@ +# -*- coding: utf-8 -*- +from . import account_payment_order diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py new file mode 100644 index 0000000..f9aac62 --- /dev/null +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- +# Copyright 2009-2017 Noviat. +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, models, _ +from odoo.exceptions import UserError + + +class AccountPaymentOrder(models.Model): + _inherit = 'account.payment.order' + + @api.multi + def ebics_upload(self): + self.ensure_one() + ctx = self._context.copy() + attach = self.env['ir.attachment'].search( + [('res_model', '=', self._name), + ('res_id', '=', self.id)]) + if not attach: + raise UserError(_( + "This payment order doesn't contains attachements." + "\nPlease generate first the Payment Order file first.")) + elif len(attach) > 1: + raise UserError(_( + "This payment order contains multiple attachments." + "\nPlease remove the obsolete attachments or upload " + "the payment order file via the " + "EBICS Processing > EBICS Upload menu")) + else: + origin = _("Payment Order") + ': ' + self.name + ctx.update({ + 'default_upload_data': attach.datas, + 'default_upload_fname': attach.datas_fname, + 'origin': origin, + }) + ebics_xfer = self.env['ebics.xfer'].with_context(ctx).create({}) + ebics_xfer._onchange_upload_data() + ebics_xfer._onchange_format_id() + view = self.env.ref('account_ebics.ebics_xfer_view_form_upload') + act = { + 'name': _('EBICS Upload'), + 'view_type': 'form', + 'view_mode': 'form', + 'res_model': 'ebics.xfer', + 'view_id': view.id, + 'res_id': ebics_xfer.id, + 'type': 'ir.actions.act_window', + 'target': 'new', + 'context': ctx, + } + return act diff --git a/account_ebics_payment_order/static/description/icon.png b/account_ebics_payment_order/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..889d1294392923a091fba44560342126a11c1aac GIT binary patch literal 17137 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 literal 0 KcmV+b0RR6000031 diff --git a/account_ebics_payment_order/views/account_payment_order.xml b/account_ebics_payment_order/views/account_payment_order.xml new file mode 100644 index 0000000..9bd43c8 --- /dev/null +++ b/account_ebics_payment_order/views/account_payment_order.xml @@ -0,0 +1,18 @@ + + + + + + account.payment.order.form + account.payment.order + + + + + + + + From 6dd7dd25bd85733036d49682d9b297636864c5c5 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sat, 11 May 2019 20:06:03 +0200 Subject: [PATCH 02/19] [MIG] account_ebics_payment_order: Migration to 11.0 --- account_ebics_payment_order/__init__.py | 1 - account_ebics_payment_order/__manifest__.py | 5 ++--- account_ebics_payment_order/models/__init__.py | 1 - account_ebics_payment_order/models/account_payment_order.py | 3 +-- 4 files changed, 3 insertions(+), 7 deletions(-) diff --git a/account_ebics_payment_order/__init__.py b/account_ebics_payment_order/__init__.py index 563e77c..fcc96f7 100644 --- a/account_ebics_payment_order/__init__.py +++ b/account_ebics_payment_order/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2009-2017 Noviat. # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index b7fd1d4..fc438c4 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -1,10 +1,9 @@ -# -*- coding: utf-8 -*- -# Copyright 2009-2017 Noviat. +# Copyright 2009-2019 Noviat. # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { 'name': 'Upload Payment Order via EBICS', - 'version': '10.0.1.0.0', + 'version': '11.0.1.0.0', 'license': 'AGPL-3', 'author': 'Noviat', 'category': 'Accounting & Finance', diff --git a/account_ebics_payment_order/models/__init__.py b/account_ebics_payment_order/models/__init__.py index 66e826d..429f032 100644 --- a/account_ebics_payment_order/models/__init__.py +++ b/account_ebics_payment_order/models/__init__.py @@ -1,2 +1 @@ -# -*- coding: utf-8 -*- from . import account_payment_order diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index f9aac62..750b3a6 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -1,5 +1,4 @@ -# -*- coding: utf-8 -*- -# Copyright 2009-2017 Noviat. +# Copyright 2009-2019 Noviat. # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). from odoo import api, models, _ From 57b711645d0fe64e64e681c4c318395867176dea Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sat, 11 May 2019 20:13:54 +0200 Subject: [PATCH 03/19] update README.rst --- account_ebics_payment_order/README.rst | 5 +++++ account_ebics_payment_order/__init__.py | 3 --- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/account_ebics_payment_order/README.rst b/account_ebics_payment_order/README.rst index 2109413..e976663 100644 --- a/account_ebics_payment_order/README.rst +++ b/account_ebics_payment_order/README.rst @@ -21,3 +21,8 @@ Usage Create your Payment Order and generate the bank file. Upload the generated file via the 'EBICS Upload' button on the payment order. + +Known issues / Roadmap +====================== + + * Add support for multiple EBICS connections. diff --git a/account_ebics_payment_order/__init__.py b/account_ebics_payment_order/__init__.py index fcc96f7..0650744 100644 --- a/account_ebics_payment_order/__init__.py +++ b/account_ebics_payment_order/__init__.py @@ -1,4 +1 @@ -# Copyright 2009-2017 Noviat. -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - from . import models From 2769be43db5fc37536e5f4835add171446e6e772 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Thu, 17 Oct 2019 22:05:42 +0200 Subject: [PATCH 04/19] [12.0][MIG] account_ebics --- account_ebics_payment_order/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index fc438c4..4c7febc 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -3,7 +3,7 @@ { 'name': 'Upload Payment Order via EBICS', - 'version': '11.0.1.0.0', + 'version': '12.0.1.0.0', 'license': 'AGPL-3', 'author': 'Noviat', 'category': 'Accounting & Finance', From ece13161f2518ce23b62a9a5c21e9911255f89e3 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sun, 22 Dec 2019 10:54:00 +0100 Subject: [PATCH 05/19] lpgl --- account_ebics_payment_order/README.rst | 4 ++-- account_ebics_payment_order/__manifest__.py | 4 ++-- account_ebics_payment_order/models/account_payment_order.py | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/account_ebics_payment_order/README.rst b/account_ebics_payment_order/README.rst index e976663..c6ecb6d 100644 --- a/account_ebics_payment_order/README.rst +++ b/account_ebics_payment_order/README.rst @@ -1,5 +1,5 @@ -.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg - :target: https://www.gnu.org/licenses/agpl +.. image:: https://img.shields.io/badge/licence-LGPL--3-blue.svg + :target: https://www.gnu.org/licenses/lpgl :alt: License: AGPL-3 ============================== diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 4c7febc..f359f3f 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -1,10 +1,10 @@ # Copyright 2009-2019 Noviat. -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). { 'name': 'Upload Payment Order via EBICS', 'version': '12.0.1.0.0', - 'license': 'AGPL-3', + 'license': 'LGPL-3', 'author': 'Noviat', 'category': 'Accounting & Finance', 'depends': [ diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index 750b3a6..a5fb5bb 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -1,5 +1,5 @@ # Copyright 2009-2019 Noviat. -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). from odoo import api, models, _ from odoo.exceptions import UserError From 04c5d06dd75964941ef131e6901af64662f62bca Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Fri, 29 May 2020 16:22:27 +0200 Subject: [PATCH 06/19] [13.0]account_ebics_payment_order --- account_ebics_payment_order/__manifest__.py | 4 ++-- account_ebics_payment_order/models/account_payment_order.py | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index f359f3f..1f9a6da 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -1,9 +1,9 @@ -# Copyright 2009-2019 Noviat. +# Copyright 2009-2020 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). { 'name': 'Upload Payment Order via EBICS', - 'version': '12.0.1.0.0', + 'version': '13.0.1.0.0', 'license': 'LGPL-3', 'author': 'Noviat', 'category': 'Accounting & Finance', diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index a5fb5bb..d61e92a 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -1,4 +1,4 @@ -# Copyright 2009-2019 Noviat. +# Copyright 2009-2020 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). from odoo import api, models, _ @@ -8,7 +8,6 @@ from odoo.exceptions import UserError class AccountPaymentOrder(models.Model): _inherit = 'account.payment.order' - @api.multi def ebics_upload(self): self.ensure_one() ctx = self._context.copy() From df4a7e3f217c73abb8e1773def44d70d1508c1a8 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sat, 25 Jul 2020 18:24:08 +0200 Subject: [PATCH 07/19] [13.0]fix account_ebics_payment_order --- account_ebics_payment_order/__manifest__.py | 2 +- .../models/account_payment_order.py | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 1f9a6da..af898a4 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -3,7 +3,7 @@ { 'name': 'Upload Payment Order via EBICS', - 'version': '13.0.1.0.0', + 'version': '13.0.1.1.0', 'license': 'LGPL-3', 'author': 'Noviat', 'category': 'Accounting & Finance', diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index d61e92a..0da4800 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -1,7 +1,7 @@ # Copyright 2009-2020 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). -from odoo import api, models, _ +from odoo import _, models from odoo.exceptions import UserError @@ -26,12 +26,24 @@ class AccountPaymentOrder(models.Model): "EBICS Processing > EBICS Upload menu")) else: origin = _("Payment Order") + ': ' + self.name + ebics_config = self.env['ebics.config'].search([ + ('journal_ids', '=', self.journal_id.id), + ('state', '=', 'confirm'), + ]) + if not ebics_config: + raise UserError(_( + "No active EBICS configuration available " + "for the selected bank." + )) + if len(ebics_config) == 1: + ctx["default_ebics_config_id"] = ebics_config.id ctx.update({ 'default_upload_data': attach.datas, - 'default_upload_fname': attach.datas_fname, + 'default_upload_fname': attach.name, 'origin': origin, }) ebics_xfer = self.env['ebics.xfer'].with_context(ctx).create({}) + ebics_xfer._onchange_ebics_config_id() ebics_xfer._onchange_upload_data() ebics_xfer._onchange_format_id() view = self.env.ref('account_ebics.ebics_xfer_view_form_upload') From 7f772bcf844523698ba0ea0a2882c1ab8d71b41d Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Wed, 6 Jan 2021 21:22:11 +0100 Subject: [PATCH 08/19] multi-company fix --- account_ebics_payment_order/models/account_payment_order.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index 0da4800..64e9442 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -1,4 +1,4 @@ -# Copyright 2009-2020 Noviat. +# Copyright 2009-2021 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). from odoo import _, models @@ -41,6 +41,7 @@ class AccountPaymentOrder(models.Model): 'default_upload_data': attach.datas, 'default_upload_fname': attach.name, 'origin': origin, + 'force_comany': self.company_id.id, }) ebics_xfer = self.env['ebics.xfer'].with_context(ctx).create({}) ebics_xfer._onchange_ebics_config_id() From d6456146eff505821997e974f4a6795dbf990c44 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sun, 11 Apr 2021 21:04:15 +0200 Subject: [PATCH 09/19] [MIG] account_ebics_payment_order: Migration to 14.0 --- account_ebics_payment_order/__manifest__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index af898a4..5836ab7 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -1,9 +1,9 @@ -# Copyright 2009-2020 Noviat. +# Copyright 2009-2021 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). { 'name': 'Upload Payment Order via EBICS', - 'version': '13.0.1.1.0', + 'version': '14.0.1.0.0', 'license': 'LGPL-3', 'author': 'Noviat', 'category': 'Accounting & Finance', From f720844f1a237f993e251446e65f9b2f6943115a Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Tue, 10 May 2022 21:40:54 +0200 Subject: [PATCH 10/19] [14.0]black, isort, prettier --- account_ebics_payment_order/__manifest__.py | 20 ++--- .../models/account_payment_order.py | 88 +++++++++++-------- .../views/account_payment_order.xml | 13 ++- 3 files changed, 68 insertions(+), 53 deletions(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 5836ab7..35ad8a2 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -2,16 +2,14 @@ # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). { - 'name': 'Upload Payment Order via EBICS', - 'version': '14.0.1.0.0', - 'license': 'LGPL-3', - 'author': 'Noviat', - 'category': 'Accounting & Finance', - 'depends': [ - 'account_ebics', - 'account_payment_order'], - 'data': [ - 'views/account_payment_order.xml', + "name": "Upload Payment Order via EBICS", + "version": "14.0.1.0.0", + "license": "LGPL-3", + "author": "Noviat", + "category": "Accounting & Finance", + "depends": ["account_ebics", "account_payment_order"], + "data": [ + "views/account_payment_order.xml", ], - 'installable': True, + "installable": True, } diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index 64e9442..081e927 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -6,57 +6,69 @@ from odoo.exceptions import UserError class AccountPaymentOrder(models.Model): - _inherit = 'account.payment.order' + _inherit = "account.payment.order" def ebics_upload(self): self.ensure_one() ctx = self._context.copy() - attach = self.env['ir.attachment'].search( - [('res_model', '=', self._name), - ('res_id', '=', self.id)]) + attach = self.env["ir.attachment"].search( + [("res_model", "=", self._name), ("res_id", "=", self.id)] + ) if not attach: - raise UserError(_( - "This payment order doesn't contains attachements." - "\nPlease generate first the Payment Order file first.")) + raise UserError( + _( + "This payment order doesn't contains attachements." + "\nPlease generate first the Payment Order file first." + ) + ) elif len(attach) > 1: - raise UserError(_( - "This payment order contains multiple attachments." - "\nPlease remove the obsolete attachments or upload " - "the payment order file via the " - "EBICS Processing > EBICS Upload menu")) + raise UserError( + _( + "This payment order contains multiple attachments." + "\nPlease remove the obsolete attachments or upload " + "the payment order file via the " + "EBICS Processing > EBICS Upload menu" + ) + ) else: - origin = _("Payment Order") + ': ' + self.name - ebics_config = self.env['ebics.config'].search([ - ('journal_ids', '=', self.journal_id.id), - ('state', '=', 'confirm'), - ]) + origin = _("Payment Order") + ": " + self.name + ebics_config = self.env["ebics.config"].search( + [ + ("journal_ids", "=", self.journal_id.id), + ("state", "=", "confirm"), + ] + ) if not ebics_config: - raise UserError(_( - "No active EBICS configuration available " - "for the selected bank." - )) + raise UserError( + _( + "No active EBICS configuration available " + "for the selected bank." + ) + ) if len(ebics_config) == 1: ctx["default_ebics_config_id"] = ebics_config.id - ctx.update({ - 'default_upload_data': attach.datas, - 'default_upload_fname': attach.name, - 'origin': origin, - 'force_comany': self.company_id.id, - }) - ebics_xfer = self.env['ebics.xfer'].with_context(ctx).create({}) + ctx.update( + { + "default_upload_data": attach.datas, + "default_upload_fname": attach.name, + "origin": origin, + "force_comany": self.company_id.id, + } + ) + ebics_xfer = self.env["ebics.xfer"].with_context(ctx).create({}) ebics_xfer._onchange_ebics_config_id() ebics_xfer._onchange_upload_data() ebics_xfer._onchange_format_id() - view = self.env.ref('account_ebics.ebics_xfer_view_form_upload') + view = self.env.ref("account_ebics.ebics_xfer_view_form_upload") act = { - 'name': _('EBICS Upload'), - 'view_type': 'form', - 'view_mode': 'form', - 'res_model': 'ebics.xfer', - 'view_id': view.id, - 'res_id': ebics_xfer.id, - 'type': 'ir.actions.act_window', - 'target': 'new', - 'context': ctx, + "name": _("EBICS Upload"), + "view_type": "form", + "view_mode": "form", + "res_model": "ebics.xfer", + "view_id": view.id, + "res_id": ebics_xfer.id, + "type": "ir.actions.act_window", + "target": "new", + "context": ctx, } return act diff --git a/account_ebics_payment_order/views/account_payment_order.xml b/account_ebics_payment_order/views/account_payment_order.xml index 9bd43c8..8f81e20 100644 --- a/account_ebics_payment_order/views/account_payment_order.xml +++ b/account_ebics_payment_order/views/account_payment_order.xml @@ -1,15 +1,20 @@ - + account.payment.order.form account.payment.order - + From 298329030d1f388eacc8ed0157f945472057a0d2 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Thu, 24 Nov 2022 22:04:58 +0100 Subject: [PATCH 11/19] [MIG] account_ebics_payment_order: Migration to 15.0 --- account_ebics_payment_order/__manifest__.py | 7 ++++--- .../models/account_payment_order.py | 6 +++--- ...t_order.xml => account_payment_order_views.xml} | 14 ++++++-------- 3 files changed, 13 insertions(+), 14 deletions(-) rename account_ebics_payment_order/views/{account_payment_order.xml => account_payment_order_views.xml} (65%) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 35ad8a2..d79491a 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -1,15 +1,16 @@ -# Copyright 2009-2021 Noviat. +# Copyright 2009-2022 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). { "name": "Upload Payment Order via EBICS", - "version": "14.0.1.0.0", + "version": "15.0.1.0.0", "license": "LGPL-3", "author": "Noviat", + "website": "https://www.noviat.com", "category": "Accounting & Finance", "depends": ["account_ebics", "account_payment_order"], "data": [ - "views/account_payment_order.xml", + "views/account_payment_order_views.xml", ], "installable": True, } diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index 081e927..42045c2 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -1,4 +1,4 @@ -# Copyright 2009-2021 Noviat. +# Copyright 2009-2022 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). from odoo import _, models @@ -10,7 +10,6 @@ class AccountPaymentOrder(models.Model): def ebics_upload(self): self.ensure_one() - ctx = self._context.copy() attach = self.env["ir.attachment"].search( [("res_model", "=", self._name), ("res_id", "=", self.id)] ) @@ -45,6 +44,7 @@ class AccountPaymentOrder(models.Model): "for the selected bank." ) ) + ctx = self.env.context.copy() if len(ebics_config) == 1: ctx["default_ebics_config_id"] = ebics_config.id ctx.update( @@ -55,7 +55,7 @@ class AccountPaymentOrder(models.Model): "force_comany": self.company_id.id, } ) - ebics_xfer = self.env["ebics.xfer"].with_context(ctx).create({}) + ebics_xfer = self.env["ebics.xfer"].with_context(**ctx).create({}) ebics_xfer._onchange_ebics_config_id() ebics_xfer._onchange_upload_data() ebics_xfer._onchange_format_id() diff --git a/account_ebics_payment_order/views/account_payment_order.xml b/account_ebics_payment_order/views/account_payment_order_views.xml similarity index 65% rename from account_ebics_payment_order/views/account_payment_order.xml rename to account_ebics_payment_order/views/account_payment_order_views.xml index 8f81e20..bdadee4 100644 --- a/account_ebics_payment_order/views/account_payment_order.xml +++ b/account_ebics_payment_order/views/account_payment_order_views.xml @@ -1,6 +1,5 @@ - account.payment.order.form @@ -9,15 +8,14 @@ - From 020b546b58ecc0b7dd620d2569dbf7dc6b511530 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Fri, 23 Dec 2022 11:46:48 +0100 Subject: [PATCH 12/19] [MIG] : Migration to 16.0 --- account_ebics_payment_order/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index d79491a..eeab9e2 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -3,7 +3,7 @@ { "name": "Upload Payment Order via EBICS", - "version": "15.0.1.0.0", + "version": "16.0.1.0.0", "license": "LGPL-3", "author": "Noviat", "website": "https://www.noviat.com", From cfc3b07ccad3649a76abc698fc4b8a1a47012f5e Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sun, 12 Feb 2023 17:07:49 +0100 Subject: [PATCH 13/19] add support for 16.0 Odoo OE camt parser --- account_ebics_payment_order/__manifest__.py | 6 ++++-- account_ebics_payment_order/models/account_payment_order.py | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index eeab9e2..b5be3f9 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -1,4 +1,4 @@ -# Copyright 2009-2022 Noviat. +# Copyright 2009-2023 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). { @@ -12,5 +12,7 @@ "data": [ "views/account_payment_order_views.xml", ], - "installable": True, + # installable False unit OCA payment order becomes + # available for 16.0 + "installable": False, } diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index 42045c2..ecd9c78 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -1,4 +1,4 @@ -# Copyright 2009-2022 Noviat. +# Copyright 2009-2023 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). from odoo import _, models From 545163db70af138ea07fc7d6883bf0ec5843ff89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Didderen?= Date: Sun, 26 Mar 2023 12:38:56 +0200 Subject: [PATCH 14/19] add cover image on all ebic modules --- account_ebics_payment_order/__manifest__.py | 1 + .../static/description/cover.png | Bin 0 -> 43278 bytes 2 files changed, 1 insertion(+) create mode 100644 account_ebics_payment_order/static/description/cover.png diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index b5be3f9..63490b4 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -14,5 +14,6 @@ ], # installable False unit OCA payment order becomes # available for 16.0 + "images": ["static/description/cover.png"], "installable": False, } diff --git a/account_ebics_payment_order/static/description/cover.png b/account_ebics_payment_order/static/description/cover.png new file mode 100644 index 0000000000000000000000000000000000000000..1ce051ad1171d0d40845d699c3f66f6ef221a022 GIT binary patch literal 43278 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 Date: Sun, 28 May 2023 17:01:06 +0200 Subject: [PATCH 15/19] [16.0]fix typo in license URL --- account_ebics_payment_order/README.rst | 2 +- account_ebics_payment_order/__manifest__.py | 2 +- account_ebics_payment_order/models/account_payment_order.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/account_ebics_payment_order/README.rst b/account_ebics_payment_order/README.rst index c6ecb6d..75caafd 100644 --- a/account_ebics_payment_order/README.rst +++ b/account_ebics_payment_order/README.rst @@ -1,5 +1,5 @@ .. image:: https://img.shields.io/badge/licence-LGPL--3-blue.svg - :target: https://www.gnu.org/licenses/lpgl + :target: https://www.gnu.org/licenses/lgpl :alt: License: AGPL-3 ============================== diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 63490b4..3d73d7a 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -1,5 +1,5 @@ # Copyright 2009-2023 Noviat. -# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). +# License LGPL-3 or later (http://www.gnu.org/licenses/lgpl). { "name": "Upload Payment Order via EBICS", diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index ecd9c78..03a49b6 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -1,5 +1,5 @@ # Copyright 2009-2023 Noviat. -# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). +# License LGPL-3 or later (http://www.gnu.org/licenses/lgpl). from odoo import _, models from odoo.exceptions import UserError From c53d4f52e6119f98326e63456c3da9888862bb74 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sat, 5 Aug 2023 18:28:12 +0200 Subject: [PATCH 16/19] [16.0] add support for OCA payment order --- account_ebics_payment_order/README.rst | 4 ---- account_ebics_payment_order/__manifest__.py | 4 +--- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/account_ebics_payment_order/README.rst b/account_ebics_payment_order/README.rst index 75caafd..2bb94ee 100644 --- a/account_ebics_payment_order/README.rst +++ b/account_ebics_payment_order/README.rst @@ -22,7 +22,3 @@ Usage Create your Payment Order and generate the bank file. Upload the generated file via the 'EBICS Upload' button on the payment order. -Known issues / Roadmap -====================== - - * Add support for multiple EBICS connections. diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 3d73d7a..4174e85 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -12,8 +12,6 @@ "data": [ "views/account_payment_order_views.xml", ], - # installable False unit OCA payment order becomes - # available for 16.0 "images": ["static/description/cover.png"], - "installable": False, + "installable": True, } From 1751b79c10fef06b5df13fbef2e41e2289245d1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Didderen?= Date: Sun, 13 Aug 2023 17:51:31 +0200 Subject: [PATCH 17/19] add CI config --- account_ebics_payment_order/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 4174e85..c7c14f7 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -6,7 +6,7 @@ "version": "16.0.1.0.0", "license": "LGPL-3", "author": "Noviat", - "website": "https://www.noviat.com", + "website": "https://www.noviat.com/", "category": "Accounting & Finance", "depends": ["account_ebics", "account_payment_order"], "data": [ From e9eaeeedb71ed43b0fdd40b354af50e810aed1f2 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Mon, 25 Mar 2024 17:58:44 +0100 Subject: [PATCH 18/19] [IMP] account_ebics_payment_order: pre-commit auto fixes --- account_ebics_payment_order/__manifest__.py | 2 +- account_ebics_payment_order/pyproject.toml | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 account_ebics_payment_order/pyproject.toml diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index c7c14f7..4174e85 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -6,7 +6,7 @@ "version": "16.0.1.0.0", "license": "LGPL-3", "author": "Noviat", - "website": "https://www.noviat.com/", + "website": "https://www.noviat.com", "category": "Accounting & Finance", "depends": ["account_ebics", "account_payment_order"], "data": [ diff --git a/account_ebics_payment_order/pyproject.toml b/account_ebics_payment_order/pyproject.toml new file mode 100644 index 0000000..4231d0c --- /dev/null +++ b/account_ebics_payment_order/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" From ced06fdf9aee42916dc0a79258ad882012323c22 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Mon, 25 Mar 2024 18:05:57 +0100 Subject: [PATCH 19/19] [MIG] account_ebics_payment_order: Migration to 17.0 --- account_ebics_payment_order/__manifest__.py | 4 ++-- .../views/account_payment_order_views.xml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 4174e85..f4da019 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -1,9 +1,9 @@ -# Copyright 2009-2023 Noviat. +# Copyright 2009-2024 Noviat. # License LGPL-3 or later (http://www.gnu.org/licenses/lgpl). { "name": "Upload Payment Order via EBICS", - "version": "16.0.1.0.0", + "version": "17.0.1.0.0", "license": "LGPL-3", "author": "Noviat", "website": "https://www.noviat.com", diff --git a/account_ebics_payment_order/views/account_payment_order_views.xml b/account_ebics_payment_order/views/account_payment_order_views.xml index bdadee4..46bad82 100644 --- a/account_ebics_payment_order/views/account_payment_order_views.xml +++ b/account_ebics_payment_order/views/account_payment_order_views.xml @@ -10,7 +10,7 @@