diff --git a/eng_cnab_filename/__manifest__.py b/eng_cnab_filename/__manifest__.py index 9157a357a..fe3f4d89a 100644 --- a/eng_cnab_filename/__manifest__.py +++ b/eng_cnab_filename/__manifest__.py @@ -5,7 +5,7 @@ "author": "Engenere", "maintainers": ["antoniospneto"], "website": "https://engenere.one", - "version": "14.0.1.0.0", + "version": "14.0.2.0.0", "depends": ["l10n_br_account_payment_order"], "data": [ "views/account_payment_mode.xml", diff --git a/eng_cnab_filename/migrations/14.0.2.0.0/post-migration.py b/eng_cnab_filename/migrations/14.0.2.0.0/post-migration.py new file mode 100644 index 000000000..2092c21b8 --- /dev/null +++ b/eng_cnab_filename/migrations/14.0.2.0.0/post-migration.py @@ -0,0 +1,30 @@ +# Copyright 2024 - Engenere (). +# @author Antônio S. Pereira Neto +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + # Verifique se o campo antigo existe no banco de dados + if openupgrade.column_exists( + env.cr, "account_payment_mode", "filename_sequence_id" + ): + # Atualizar o arquivo cnab_config_id com filename_sequence_id + env.cr.execute( + """ + UPDATE l10n_br_cnab_config cc + SET filename_sequence_id = ( + SELECT filename_sequence_id + FROM account_payment_mode apm + WHERE apm.cnab_config_id = cc.id + ) + WHERE EXISTS ( + SELECT 1 + FROM account_payment_mode apm + WHERE apm.cnab_config_id = cc.id + AND apm.filename_sequence_id IS NOT NULL + ) + """ + ) diff --git a/eng_cnab_filename/models/__init__.py b/eng_cnab_filename/models/__init__.py index ce4bf1576..4e69d57f1 100644 --- a/eng_cnab_filename/models/__init__.py +++ b/eng_cnab_filename/models/__init__.py @@ -1,2 +1,2 @@ from . import account_payment_order -from . import account_payment_mode +from . import cnab_config diff --git a/eng_cnab_filename/models/account_payment_order.py b/eng_cnab_filename/models/account_payment_order.py index 4df311410..1401ba443 100644 --- a/eng_cnab_filename/models/account_payment_order.py +++ b/eng_cnab_filename/models/account_payment_order.py @@ -8,7 +8,7 @@ def get_file_name(self, cnab_type): """ Sobrescreve a lógica para a criação do nome a partir do sequenciador. """ - sequence = self.payment_mode_id.filename_sequence_id + sequence = self.payment_mode_id.cnab_config_id.filename_sequence_id if sequence: filename = f"{sequence.next_by_id()}.REM" else: diff --git a/eng_cnab_filename/models/account_payment_mode.py b/eng_cnab_filename/models/cnab_config.py similarity index 85% rename from eng_cnab_filename/models/account_payment_mode.py rename to eng_cnab_filename/models/cnab_config.py index 253845a04..376a00f8a 100644 --- a/eng_cnab_filename/models/account_payment_mode.py +++ b/eng_cnab_filename/models/cnab_config.py @@ -2,7 +2,7 @@ class AccountPaymentMode(models.Model): - _inherit = "account.payment.mode" + _inherit = "l10n_br_cnab.config" filename_sequence_id = fields.Many2one( comodel_name="ir.sequence", diff --git a/eng_cnab_filename/views/account_payment_mode.xml b/eng_cnab_filename/views/account_payment_mode.xml index d0fdc86b1..3559557c0 100644 --- a/eng_cnab_filename/views/account_payment_mode.xml +++ b/eng_cnab_filename/views/account_payment_mode.xml @@ -1,12 +1,12 @@ - - eng_cnab_filename.payment_mode.form - account.payment.mode + + cnab.config.form.view.filename.extension + l10n_br_cnab.config 99