From 5b3d11fb30c033cd16a6176d588ac8b39e88a3db Mon Sep 17 00:00:00 2001
From: JasminSForgeFlow
Date: Wed, 3 Apr 2024 11:32:11 +0530
Subject: [PATCH] [MIG] account_banking_sepa_direct_debit: Migration to 17.0
---
account_banking_sepa_direct_debit/__manifest__.py | 2 +-
.../data/mail_template_data.xml | 6 +++---
.../migrations/16.0.1.0.2/post-migration.py | 11 -----------
.../models/account_banking_mandate.py | 8 +++++---
.../models/account_payment_line.py | 2 +-
.../models/mail_compose_message.py | 9 +++++----
.../tests/test_mandate.py | 4 +---
.../views/account_banking_mandate_view.xml | 14 ++++++--------
.../views/res_config_settings.xml | 15 ++++-----------
9 files changed, 26 insertions(+), 45 deletions(-)
delete mode 100644 account_banking_sepa_direct_debit/migrations/16.0.1.0.2/post-migration.py
diff --git a/account_banking_sepa_direct_debit/__manifest__.py b/account_banking_sepa_direct_debit/__manifest__.py
index 8e63a908a..0eaa109d8 100644
--- a/account_banking_sepa_direct_debit/__manifest__.py
+++ b/account_banking_sepa_direct_debit/__manifest__.py
@@ -7,7 +7,7 @@
{
"name": "Account Banking SEPA Direct Debit",
"summary": "Create SEPA files for Direct Debit",
- "version": "16.0.1.2.0",
+ "version": "17.0.1.0.0",
"license": "AGPL-3",
"author": "Akretion, Tecnativa, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/bank-payment",
diff --git a/account_banking_sepa_direct_debit/data/mail_template_data.xml b/account_banking_sepa_direct_debit/data/mail_template_data.xml
index dcb15e808..ec99f3dd2 100644
--- a/account_banking_sepa_direct_debit/data/mail_template_data.xml
+++ b/account_banking_sepa_direct_debit/data/mail_template_data.xml
@@ -34,10 +34,10 @@
-
{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}
+ name="report_template_ids"
+ eval="[(4, ref('account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate'))]"
+ />
{{ object.partner_id.lang }}
diff --git a/account_banking_sepa_direct_debit/migrations/16.0.1.0.2/post-migration.py b/account_banking_sepa_direct_debit/migrations/16.0.1.0.2/post-migration.py
deleted file mode 100644
index 292df1868..000000000
--- a/account_banking_sepa_direct_debit/migrations/16.0.1.0.2/post-migration.py
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 2023 Akretion France (http://www.akretion.com/)
-# @author: Alexis de Lattre
-# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-
-from openupgradelib import openupgrade
-
-
-@openupgrade.migrate()
-def migrate(env, version):
- sct_method = env.ref("account_banking_sepa_direct_debit.sepa_direct_debit")
- sct_method.write({"warn_not_sepa": True})
diff --git a/account_banking_sepa_direct_debit/models/account_banking_mandate.py b/account_banking_sepa_direct_debit/models/account_banking_mandate.py
index ad683d216..fa67ff8b5 100644
--- a/account_banking_sepa_direct_debit/models/account_banking_mandate.py
+++ b/account_banking_sepa_direct_debit/models/account_banking_mandate.py
@@ -107,7 +107,8 @@ class AccountBankingMandate(models.Model):
for mandate in expired_mandates:
mandate.message_post(
body=_(
- "Mandate automatically set to expired after %d months without use."
+ "Mandate automatically set to"
+ " expired after %d months without use."
)
% NUMBER_OF_UNUSED_MONTHS_BEFORE_EXPIRY
)
@@ -125,7 +126,8 @@ class AccountBankingMandate(models.Model):
return action
def action_mandate_send(self):
- """Opens a wizard to compose an email, with relevant mail template loaded by default"""
+ """Opens a wizard to compose an email,
+ with relevant mail template loaded by default"""
self.ensure_one()
template_id = self.env["ir.model.data"]._xmlid_to_res_id(
"account_banking_sepa_direct_debit.email_template_sepa_mandate",
@@ -133,7 +135,7 @@ class AccountBankingMandate(models.Model):
)
ctx = {
"default_model": "account.banking.mandate",
- "default_res_id": self.id,
+ "default_res_ids": self.ids,
"default_use_template": bool(template_id),
"default_template_id": template_id,
"default_composition_mode": "comment",
diff --git a/account_banking_sepa_direct_debit/models/account_payment_line.py b/account_banking_sepa_direct_debit/models/account_payment_line.py
index 45191f500..2e91fadd1 100644
--- a/account_banking_sepa_direct_debit/models/account_payment_line.py
+++ b/account_banking_sepa_direct_debit/models/account_payment_line.py
@@ -11,7 +11,7 @@ class AccountPaymentLine(models.Model):
def draft2open_payment_line_check(self):
res = super().draft2open_payment_line_check()
sepa_dd_lines = self.filtered(
- lambda l: l.order_id.payment_method_id.code == "sepa_direct_debit"
+ lambda line: line.order_id.payment_method_id.code == "sepa_direct_debit"
)
sepa_dd_lines._check_sepa_direct_debit_ready()
return res
diff --git a/account_banking_sepa_direct_debit/models/mail_compose_message.py b/account_banking_sepa_direct_debit/models/mail_compose_message.py
index f19ba5319..9d00d1b08 100644
--- a/account_banking_sepa_direct_debit/models/mail_compose_message.py
+++ b/account_banking_sepa_direct_debit/models/mail_compose_message.py
@@ -1,5 +1,6 @@
# Copyright 2024 Tecnativa - Carolina Fernandez
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+import json
from odoo import models
@@ -10,7 +11,7 @@ class MailComposeMessage(models.TransientModel):
def _action_send_mail(self, auto_commit=False):
for wizard in self:
if self.env.context.get("is_sent"):
- self.env[wizard.model].sudo().browse(wizard.res_id).is_sent = True
- return super(MailComposeMessage, self)._action_send_mail(
- auto_commit=auto_commit
- )
+ self.env[wizard.model].sudo().browse(
+ json.loads(wizard.res_ids)
+ ).is_sent = True
+ return super()._action_send_mail(auto_commit=auto_commit)
diff --git a/account_banking_sepa_direct_debit/tests/test_mandate.py b/account_banking_sepa_direct_debit/tests/test_mandate.py
index eff7e8ea8..dc0a42868 100644
--- a/account_banking_sepa_direct_debit/tests/test_mandate.py
+++ b/account_banking_sepa_direct_debit/tests/test_mandate.py
@@ -40,9 +40,7 @@ class TestMandate(TransactionCase):
.browse(email_ctx.get("default_template_id"))
.copy({"auto_delete": False})
)
- self.mandate.with_context(**email_ctx).message_post_with_template(
- mail_template.id
- )
+ self.mandate.with_context(**email_ctx).message_post_with_source(mail_template)
mail_message = self.mandate.message_ids[0]
self.assertEqual(
self.mandate.partner_id, mail_message.sudo().mail_ids.recipient_ids
diff --git a/account_banking_sepa_direct_debit/views/account_banking_mandate_view.xml b/account_banking_sepa_direct_debit/views/account_banking_mandate_view.xml
index bc31ed086..1f03cba1b 100644
--- a/account_banking_sepa_direct_debit/views/account_banking_mandate_view.xml
+++ b/account_banking_sepa_direct_debit/views/account_banking_mandate_view.xml
@@ -17,7 +17,7 @@
name="action_mandate_send"
type="object"
string="Send by Email"
- states="draft"
+ invisible="state != 'draft'"
class="btn-primary"
/>
@@ -25,19 +25,17 @@
- {'required': [('format', '=', 'sepa')]}
+ format == 'sepa'
diff --git a/account_banking_sepa_direct_debit/views/res_config_settings.xml b/account_banking_sepa_direct_debit/views/res_config_settings.xml
index 9707c00ba..0b55afae1 100644
--- a/account_banking_sepa_direct_debit/views/res_config_settings.xml
+++ b/account_banking_sepa_direct_debit/views/res_config_settings.xml
@@ -9,17 +9,10 @@
ref="account_banking_pain_base.view_account_config_settings"
/>
-
-
-
-
-
+
+
+
+