From 42aea59a8535c1f4294c141916de40dae949b227 Mon Sep 17 00:00:00 2001 From: "Pedro M. Baeza" Date: Sun, 12 May 2019 22:08:35 +0200 Subject: [PATCH] [IMP] account_banking_mandate: Put binary field as attachment For not wasting space in DB. Migration scripts included (requires openupgradelib). --- account_banking_mandate/__manifest__.py | 2 +- .../migrations/12.0.2.0.0/post-migration.py | 15 +++++++++++++++ .../migrations/12.0.2.0.0/pre-migration.py | 17 +++++++++++++++++ .../models/account_banking_mandate.py | 5 ++++- 4 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 account_banking_mandate/migrations/12.0.2.0.0/post-migration.py create mode 100644 account_banking_mandate/migrations/12.0.2.0.0/pre-migration.py diff --git a/account_banking_mandate/__manifest__.py b/account_banking_mandate/__manifest__.py index 64dd48db1..c38f7a1ce 100644 --- a/account_banking_mandate/__manifest__.py +++ b/account_banking_mandate/__manifest__.py @@ -7,7 +7,7 @@ { 'name': 'Account Banking Mandate', 'summary': 'Banking mandates', - 'version': '12.0.1.0.0', + 'version': '12.0.2.0.0', 'license': 'AGPL-3', 'author': "Compassion CH, " "Tecnativa, " diff --git a/account_banking_mandate/migrations/12.0.2.0.0/post-migration.py b/account_banking_mandate/migrations/12.0.2.0.0/post-migration.py new file mode 100644 index 000000000..224858e87 --- /dev/null +++ b/account_banking_mandate/migrations/12.0.2.0.0/post-migration.py @@ -0,0 +1,15 @@ +# -*- coding: utf-8 -*- +# Copyright 2019 Tecnativa - Pedro M. Baeza +# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html + +from openupgradelib import openupgrade +from openupgradelib import openupgrade_90 + + +@openupgrade.migrate(use_env=True) +def migrate(env, version): + column = openupgrade.get_legacy_name('scan') + if openupgrade.column_exists(env.cr, 'account_banking_mandate', column): + openupgrade_90.convert_binary_field_to_attachment( + env, {'account.banking.mandate': [('scan', None)]}, + ) diff --git a/account_banking_mandate/migrations/12.0.2.0.0/pre-migration.py b/account_banking_mandate/migrations/12.0.2.0.0/pre-migration.py new file mode 100644 index 000000000..930e315f8 --- /dev/null +++ b/account_banking_mandate/migrations/12.0.2.0.0/pre-migration.py @@ -0,0 +1,17 @@ +# -*- coding: utf-8 -*- +# Copyright 2019 Tecnativa - Pedro M. Baeza +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from openupgradelib import openupgrade + +column_renames = { + 'account_banking_mandate': [ + ('scan', None), + ], +} + + +@openupgrade.migrate() +def migrate(cr, version): + if openupgrade.column_exists(cr, 'account_banking_mandate', 'scan'): + openupgrade.rename_columns(cr, column_renames) diff --git a/account_banking_mandate/models/account_banking_mandate.py b/account_banking_mandate/models/account_banking_mandate.py index b8077b522..bb87f7fcb 100644 --- a/account_banking_mandate/models/account_banking_mandate.py +++ b/account_banking_mandate/models/account_banking_mandate.py @@ -53,7 +53,10 @@ class AccountBankingMandate(models.Model): ) signature_date = fields.Date(string='Date of Signature of the Mandate', track_visibility='onchange') - scan = fields.Binary(string='Scan of the Mandate') + scan = fields.Binary( + string='Scan of the Mandate', + attachment=True, + ) last_debit_date = fields.Date(string='Date of the Last Debit', readonly=True) state = fields.Selection([