diff --git a/l10n_br_account_payment_order/__manifest__.py b/l10n_br_account_payment_order/__manifest__.py index 6480e96dd5eb..362a3c5fa7c4 100644 --- a/l10n_br_account_payment_order/__manifest__.py +++ b/l10n_br_account_payment_order/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Brazilian Payment Order", - "version": "14.0.8.0.0", + "version": "14.0.9.0.0", "license": "AGPL-3", "author": "KMEE, Akretion, Odoo Community Association (OCA)", "maintainers": ["mbcosta"], @@ -53,11 +53,8 @@ "views/account_payment_mode.xml", "views/l10n_br_cnab_return_log_view.xml", "views/account_move_line.xml", - "views/l10n_br_cnab_return_move_code_view.xml", "views/account_payment_views.xml", - "views/l10n_br_cnab_mov_instruction_code_view.xml", "views/account_move_view.xml", - "views/l10n_br_cnab_boleto_wallet_code_view.xml", # Códigos CNAB "views/l10n_br_cnab_code_view.xml", "views/l10n_br_cnab_config_view.xml", diff --git a/l10n_br_account_payment_order/migrations/14.0.9.0.0/pre-migration.py b/l10n_br_account_payment_order/migrations/14.0.9.0.0/pre-migration.py new file mode 100644 index 000000000000..259bc6d8f124 --- /dev/null +++ b/l10n_br_account_payment_order/migrations/14.0.9.0.0/pre-migration.py @@ -0,0 +1,105 @@ +# Copyright (C) 2024-Today - Akretion (). +# @author Magno Costa +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +def update_model_data(env): + openupgrade.logged_query( + env.cr, + """ + UPDATE ir_model_data SET model = 'l10n_br_cnab.code' + WHERE model = 'l10n_br_cnab.mov.instruction.code' + """, + ) + # Codigo de Retorno + openupgrade.logged_query( + env.cr, + """ + UPDATE ir_model_data SET model = 'l10n_br_cnab.code' + WHERE model = 'l10n_br_cnab.return.move.code' + """, + ) + # Codigo Carteira + openupgrade.logged_query( + env.cr, + """ + UPDATE ir_model_data SET model = 'l10n_br_cnab.code' + WHERE model = 'l10n_br_cnab.boleto.wallet.code' + """, + ) + + +def delete_obsolete_models(env): + openupgrade.logged_query( + env.cr, + """ + DELETE FROM ir_model_fields WHERE model = 'l10n_br_cnab.mov.instruction.code' + """, + ) + openupgrade.logged_query( + env.cr, + """ + DELETE FROM ir_model WHERE model = 'l10n_br_cnab.mov.instruction.code' + """, + ) + # Codigo de Retorno + openupgrade.logged_query( + env.cr, + """ + DELETE FROM ir_model_fields WHERE model = 'l10n_br_cnab.return.move.code' + """, + ) + openupgrade.logged_query( + env.cr, + """ + DELETE FROM ir_model WHERE model = 'l10n_br_cnab.return.move.code' + """, + ) + # Codigo Carteira + openupgrade.logged_query( + env.cr, + """ + DELETE FROM ir_model_fields WHERE model = 'l10n_br_cnab.boleto.wallet.code' + """, + ) + openupgrade.logged_query( + env.cr, + """ + DELETE FROM ir_model WHERE model = 'l10n_br_cnab.boleto.wallet.code' + """, + ) + + +def delete_obsolete_data(env): + openupgrade.logged_query( + env.cr, + """ + DELETE FROM l10n_br_cnab_mov_instruction_code + """, + ) + + # Codigo de Retorno + # Data + openupgrade.logged_query( + env.cr, + """ + DELETE FROM l10n_br_cnab_return_move_code + """, + ) + # Codigo Carteira + # Data + openupgrade.logged_query( + env.cr, + """ + DELETE FROM l10n_br_cnab_boleto_wallet_code + """, + ) + + +@openupgrade.migrate(use_env=True) +def migrate(env, version): + update_model_data(env) + delete_obsolete_models(env) + delete_obsolete_data(env) diff --git a/l10n_br_account_payment_order/models/__init__.py b/l10n_br_account_payment_order/models/__init__.py index 0a956840d01e..80556188a51d 100644 --- a/l10n_br_account_payment_order/models/__init__.py +++ b/l10n_br_account_payment_order/models/__init__.py @@ -13,8 +13,5 @@ from . import l10n_br_cnab_return_log from . import ir_attachment from . import l10n_br_cnab_data_abstract -from . import l10n_br_cnab_return_move_code -from . import l10n_br_cnab_mov_intruction_code -from . import l10n_br_cnab_boleto_wallet_code from . import l10n_br_cnab_code from . import l10n_br_cnab_config diff --git a/l10n_br_account_payment_order/models/account_move_line.py b/l10n_br_account_payment_order/models/account_move_line.py index f9ade80c6154..a0e98c7a23e6 100644 --- a/l10n_br_account_payment_order/models/account_move_line.py +++ b/l10n_br_account_payment_order/models/account_move_line.py @@ -102,14 +102,6 @@ class AccountMoveLine(models.Model): copy=False, ) - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - mov_instruction_code_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Código da Instrução para Movimento", - help="Campo G061 do CNAB", - copy=False, - ) instruction_move_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Código da Instrução para Movimento", diff --git a/l10n_br_account_payment_order/models/account_payment_line.py b/l10n_br_account_payment_order/models/account_payment_line.py index 13c7855af235..95fd09f95dfe 100644 --- a/l10n_br_account_payment_order/models/account_payment_line.py +++ b/l10n_br_account_payment_order/models/account_payment_line.py @@ -136,13 +136,6 @@ class AccountPaymentLine(models.Model): default="0", ) - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - mov_instruction_code_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Código da Instrução para Movimento", - help="Campo G061 do CNAB", - ) instruction_move_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Código da Instrução para Movimento", diff --git a/l10n_br_account_payment_order/models/account_payment_mode.py b/l10n_br_account_payment_order/models/account_payment_mode.py index 3336f07534c5..41f96a7438c4 100644 --- a/l10n_br_account_payment_order/models/account_payment_mode.py +++ b/l10n_br_account_payment_order/models/account_payment_mode.py @@ -8,15 +8,13 @@ from odoo import _, api, fields, models from odoo.exceptions import ValidationError -from ..constants import BR_CODES_PAYMENT_ORDER, FORMA_LANCAMENTO, TIPO_SERVICO +from ..constants import BR_CODES_PAYMENT_ORDER class AccountPaymentMode(models.Model): _name = "account.payment.mode" _inherit = [ "account.payment.mode", - "l10n_br_cnab.boleto.fields", - "l10n_br_cnab.payment.fields", "mail.thread", ] @@ -44,24 +42,6 @@ class AccountPaymentMode(models.Model): help="Cria a ordem de pagamento automaticamente ao confirmar a fatura", ) - service_type = fields.Selection( - selection=TIPO_SERVICO, - string="Tipo de Serviço", - help="Campo G025 do CNAB", - ) - - release_form = fields.Selection( - selection=FORMA_LANCAMENTO, - string="Forma Lançamento", - help="Campo G029 do CNAB", - ) - - cnab_sequence_id = fields.Many2one( - comodel_name="ir.sequence", - string="Sequencia do Arquivo CNAB", - tracking=True, - ) - # Fields used to make invisible banks specifics fields bank_id = fields.Many2one( related="fixed_journal_id.bank_id", @@ -71,6 +51,8 @@ class AccountPaymentMode(models.Model): related="fixed_journal_id.bank_id.code_bc", ) + # TODO: Necessário adaptar o modulo l10n_br_cnab_structure + # para a Separação da Configuração CNAB do Modo de Pagto cnab_processor = fields.Selection( selection="_selection_cnab_processor", ) @@ -80,41 +62,6 @@ def _selection_cnab_processor(self): # Method to be extended by modules that implement CNAB processors. return [] - # Codigos de Retorno do Movimento - - # TODO: Campos many2many não estão sendo registrados pelo track_visibility. - # Debate no Odoo https://github.com/odoo/odoo/issues/10149 - # Modulo na OCA v10 que faria isso - # https://github.com/OCA/social/tree/10.0/mail_improved_tracking_value - # Migração do Modulo para a v12 https://github.com/OCA/social/pull/677 - # Devemos incluir esse modulo nas Dependencias OCA para poder usa-lo aqui - # já que sem ele o campo que armazena os codigos que devem ser usados para - # Baixa/Liquidação está sem a rastreabilidade a outra opção seria usar o - # modulo auditlog https://github.com/OCA/server-tools/tree/12.0/auditlog. - - # TODO: Ligação com o payment_mode_id não permite extrair para o objeto - # l10n_br_cnab.boleto.fields, teria alguma forma de fazer ? - # Podem existir diferentes codigos, mesmo no 240 - - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_liq_return_move_code_ids = fields.Many2many( - comodel_name="l10n_br_cnab.return.move.code", - relation="l10n_br_cnab_return_liquidity_move_code_rel", - column1="cnab_liq_return_move_code_id", - column2="payment_mode_id", - string="CNAB Liquidity Return Move Code", - tracking=True, - ) - liq_return_move_code_ids = fields.Many2many( - comodel_name="l10n_br_cnab.code", - relation="l10n_br_cnab_liq_return_move_code_rel", - column1="liq_return_move_code_id", - column2="payment_mode_id", - string="CNAB Liquidity Return Move Code", - tracking=True, - ) - @api.constrains( "fixed_journal_id", "group_lines", diff --git a/l10n_br_account_payment_order/models/l10n_br_cnab_boleto_fields.py b/l10n_br_account_payment_order/models/l10n_br_cnab_boleto_fields.py index 7cc6da65e076..09214195c76b 100644 --- a/l10n_br_account_payment_order/models/l10n_br_cnab_boleto_fields.py +++ b/l10n_br_account_payment_order/models/l10n_br_cnab_boleto_fields.py @@ -234,14 +234,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): # Codigos de Instrução do Movimento # Codigo de Remessa/Inclusão de Registro Detalhe Liberado - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_sending_code_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Sending Movement Instruction Code", - help="Sending Movement Instruction Code", - tracking=True, - ) sending_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Sending Movement Instruction Code", @@ -250,14 +242,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Título/Pagamento Direto ao Fornecedor -Baixar - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_write_off_code_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Write Off Movement Instruction Code", - help="Write Off Movement Instruction Code", - tracking=True, - ) write_off_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Write Off Movement Instruction Code", @@ -266,14 +250,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Alteração do Valor do Titulo - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_change_title_value_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Change Title Value Movement Instruction Code", - help="CNAB Movement Instruction Code for Change Title Value.", - tracking=True, - ) change_title_value_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Change Title Value Movement Instruction Code", @@ -282,14 +258,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Alteração da Data de Vencimento - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_change_maturity_date_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Change Maturity Date Movement Instruction Code", - help="CNAB Movement Instruction Code for Change Maturity Date.", - tracking=True, - ) change_maturity_date_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Change Maturity Date Movement Instruction Code", @@ -298,14 +266,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Protestar Título - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_protest_title_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Protest Tittle Instruction Code", - help="CNAB Movement Instruction Code for Protest Tittle.", - tracking=True, - ) protest_title_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Protest Tittle Instruction Code", @@ -314,15 +274,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Suspender Protesto e Manter em Carteira - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_suspend_protest_keep_wallet_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Suspend Protest an Keep in Wallet Instruction Code", - help="CNAB Movement Instruction Code for" - " Suspend Protest and Keep in Wallet.", - tracking=True, - ) suspend_protest_keep_wallet_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Suspend Protest an Keep in Wallet Instruction Code", @@ -332,14 +283,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Suspender Protesto e Baixar Título - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_suspend_protest_write_off_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Suspend Protest an Writte Off Instruction Code", - help="CNAB Movement Instruction Code for" " Suspend Protest and Writte Off.", - tracking=True, - ) suspend_protest_write_off_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Suspend Protest an Writte Off Instruction Code", @@ -348,14 +291,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Conceder Abatimento - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_grant_rebate_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Grant Rebate Instruction Code", - help="CNAB Movement Instruction Code for" " Grant Rebate.", - tracking=True, - ) grant_rebate_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Grant Rebate Instruction Code", @@ -364,14 +299,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Cancelar Abatimento - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_cancel_rebate_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Cancel Rebate Instruction Code", - help="CNAB Movement Instruction Code for" " Cancel Rebate.", - tracking=True, - ) cancel_rebate_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Cancel Rebate Instruction Code", @@ -380,14 +307,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Conceder Desconto - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_grant_discount_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Grant Discount Instruction Code", - help="CNAB Movement Instruction Code for" " Grant Discount.", - tracking=True, - ) grant_discount_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Grant Discount Instruction Code", @@ -396,14 +315,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): ) # Codigo para Cancelar Desconto - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - cnab_code_cancel_discount_id = fields.Many2one( - comodel_name="l10n_br_cnab.mov.instruction.code", - string="Cancel Discount Instruction Code", - help="CNAB Movement Instruction Code for Cancel Discount.", - tracking=True, - ) cancel_discount_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Cancel Discount Instruction Code", @@ -434,13 +345,6 @@ class L10nBrCNABBoletoFields(models.AbstractModel): # Código da Carteira ou Tipo de Cobrança usado por # Santanter 400 e 240 # Bradesco 240 - # TODO: Remover o campo na próxima versão, - # usando apenas para migração para o l10n_br_cnab.code - boleto_wallet_code_id = fields.Many2one( - comodel_name="l10n_br_cnab.boleto.wallet.code", - string="Boleto Wallet Code", - tracking=True, - ) wallet_code_id = fields.Many2one( comodel_name="l10n_br_cnab.code", string="Boleto Wallet Code", diff --git a/l10n_br_account_payment_order/models/l10n_br_cnab_boleto_wallet_code.py b/l10n_br_account_payment_order/models/l10n_br_cnab_boleto_wallet_code.py deleted file mode 100644 index 4f0597ea939c..000000000000 --- a/l10n_br_account_payment_order/models/l10n_br_cnab_boleto_wallet_code.py +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright (C) 2024-Today - Akretion (). -# @author Magno Costa -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - -from odoo import api, fields, models - - -class L10nBrCNABBoletoWalletCode(models.Model): - _name = "l10n_br_cnab.boleto.wallet.code" - _inherit = ["l10n_br_cnab.data.abstract", "mail.thread"] - _description = "CNAB Boleto Wallet Code" - - bank_ids = fields.Many2many( - string="Banks", - comodel_name="res.bank", - relation="l10n_br_cnab_boleto_wallet_code_bank_rel", - column1="bank_id", - column2="l10n_br_cnab_boleto_wallet_code_id", - tracking=True, - ) - - payment_method_ids = fields.Many2many( - comodel_name="account.payment.method", - string="Payment Methods", - relation="l10n_br_cnab_boleto_wallet_code_payment_method_rel", - column1="payment_method_id", - column2="l10n_br_cnab_boleto_wallet_code_id", - tracking=True, - ) - - comment = fields.Text() - - # TODO: Forma encontrada para pode fazer o Group By, na v15 - # parece já ser possivel usar campos many2many. - # Também deve ser considerado em apagar o campo many2many e deixar - # apenas o many2one já que, por enquanto, não há bancos diferentes - # usando o mesmo conjunto de codigos apenas diferentes cnab( 240/400 ) - bank_id = fields.Many2one( - comodel_name="res.bank", compute="_compute_bank_id", store=True - ) # it is possible to search only among stored fields - - payment_method_id = fields.Many2one( - comodel_name="account.payment.method", - compute="_compute_payment_method_id", - store=True, - ) # it is possible to search only among stored fields - - @api.depends("bank_ids") - def _compute_bank_id(self): - for record in self: - record.bank_id = record.bank_ids and record.bank_ids[0] or False - - @api.depends("payment_method_ids") - def _compute_payment_method_id(self): - for record in self: - record.payment_method_id = ( - record.payment_method_ids and record.payment_method_ids[0] or False - ) diff --git a/l10n_br_account_payment_order/models/l10n_br_cnab_mov_intruction_code.py b/l10n_br_account_payment_order/models/l10n_br_cnab_mov_intruction_code.py deleted file mode 100644 index b06bfba8f9f9..000000000000 --- a/l10n_br_account_payment_order/models/l10n_br_cnab_mov_intruction_code.py +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright 2020 Akretion -# @author Magno Costa -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - -from odoo import _, api, fields, models -from odoo.exceptions import ValidationError - - -class L10nBrCNABMovInstructionCode(models.Model): - _name = "l10n_br_cnab.mov.instruction.code" - _inherit = ["l10n_br_cnab.data.abstract", "mail.thread"] - _description = "CNAB Movement Instruction Code" - - bank_ids = fields.Many2many( - string="Banks", - comodel_name="res.bank", - relation="l10n_br_cnab_mov_instruction_code_bank_rel", - column1="bank_id", - column2="l10n_br_cnab_mov_instruction_code_id", - tracking=True, - ) - - payment_method_ids = fields.Many2many( - comodel_name="account.payment.method", - string="Payment Methods", - relation="l10n_br_cnab_mov_instruction_code_payment_method_rel", - column1="payment_method_id", - column2="l10n_br_cnab_mov_instruction_code_id", - tracking=True, - ) - - comment = fields.Text() - - # TODO: Forma encontrada para pode fazer o Group By, na v15 - # parece já ser possivel usar campos many2many. - # Também deve ser considerado em apagar o campo many2many e deixar - # apenas o many2one já que, por enquanto, não há bancos diferentes - # usando o mesmo conjunto de codigos apenas diferentes cnab( 240/400 - # são iguais no caso Unicred ) - bank_id = fields.Many2one( - comodel_name="res.bank", compute="_compute_bank_id", store=True - ) # it is possible to search only among stored fields - - payment_method_id = fields.Many2one( - comodel_name="account.payment.method", - compute="_compute_payment_method_id", - store=True, - ) # it is possible to search only among stored fields - - @api.depends("bank_ids") - def _compute_bank_id(self): - for record in self: - record.bank_id = record.bank_ids and record.bank_ids[0] or False - - @api.depends("payment_method_ids") - def _compute_payment_method_id(self): - for record in self: - record.payment_method_id = ( - record.payment_method_ids and record.payment_method_ids[0] or False - ) - - @api.constrains("code") - def check_code(self): - for record in self: - # Tamanho do campo é padrão 2 p/ todos - # os codigos de Instrução CNAB ? - if len(record.code) != 2: - raise ValidationError(_("The field Code should have two characters.")) - return super().check_code() diff --git a/l10n_br_account_payment_order/models/l10n_br_cnab_return_move_code.py b/l10n_br_account_payment_order/models/l10n_br_cnab_return_move_code.py deleted file mode 100644 index 81ae5aca491f..000000000000 --- a/l10n_br_account_payment_order/models/l10n_br_cnab_return_move_code.py +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright 2020 Akretion -# @author Magno Costa -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - -from odoo import _, api, fields, models -from odoo.exceptions import ValidationError - - -class L10nBrCNABReturnMoveCode(models.Model): - _name = "l10n_br_cnab.return.move.code" - _inherit = ["l10n_br_cnab.data.abstract", "mail.thread"] - _description = "CNAB Return Move Code" - - bank_ids = fields.Many2many( - string="Banks", - comodel_name="res.bank", - relation="l10n_br_cnab_return_move_code_bank_rel", - column1="bank_id", - column2="l10n_br_cnab_return_move_code_id", - tracking=True, - ) - - payment_method_ids = fields.Many2many( - comodel_name="account.payment.method", - string="Payment Methods", - relation="l10n_br_cnab_return_move_code_payment_method_rel", - column1="payment_method_id", - column2="l10n_br_cnab_mov_instruction_code_id", - tracking=True, - ) - - comment = fields.Text() - - # TODO: Forma encontrada para pode fazer o Group By, na v15 - # parece já ser possivel usar campos many2many. - # Também deve ser considerado apagar o campo many2many e deixar - # apenas o many2one já que, por enquanto, não há bancos diferentes - # usando o mesmo conjunto de codigos apenas diferentes cnab( 240/400 - # são iguais no caso Unicred ) - bank_id = fields.Many2one( - comodel_name="res.bank", compute="_compute_bank_id", store=True - ) # it is possible to search only among stored fields - - payment_method_id = fields.Many2one( - comodel_name="account.payment.method", - compute="_compute_payment_method_id", - store=True, - ) # it is possible to search only among stored fields - - @api.depends("bank_ids") - def _compute_bank_id(self): - for record in self: - record.bank_id = record.bank_ids and record.bank_ids[0] or False - - @api.depends("payment_method_ids") - def _compute_payment_method_id(self): - for record in self: - record.payment_method_id = ( - record.payment_method_ids and record.payment_method_ids[0] or False - ) - - @api.constrains("code") - def check_code(self): - for record in self: - # Tamanho do campo é padrão 2 p/ todos - # do os codigos de Retorno CNAB ? - if len(record.code) != 2: - raise ValidationError(_("The field Code should have two characters.")) - return super().check_code() diff --git a/l10n_br_account_payment_order/security/ir.model.access.csv b/l10n_br_account_payment_order/security/ir.model.access.csv index 32e9123344ed..9d9a2958428e 100644 --- a/l10n_br_account_payment_order/security/ir.model.access.csv +++ b/l10n_br_account_payment_order/security/ir.model.access.csv @@ -1,14 +1,10 @@ "id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" -access_l10n_br_cnab_return_move_code_user,access_l10n_br_cnab_return_move_code_user,model_l10n_br_cnab_return_move_code,group_cnab_user,1,0,0,0 -access_l10n_br_cnab_return_move_code_manager,access_l10n_br_cnab_return_move_code_manager,model_l10n_br_cnab_return_move_code,group_cnab_manager,1,1,1,1 access_l10n_br_cnab_return_log_user,access_l10n_br_cnab_return_log_user,model_l10n_br_cnab_return_log,group_cnab_user,1,1,1,0 access_l10n_br_cnab_return_log_manager,access_l10n_br_cnab_return_log_manager,model_l10n_br_cnab_return_log,group_cnab_manager,1,1,1,1 access_l10n_br_cnab_return_event_user,access_l10n_br_cnab_return_event_user,model_l10n_br_cnab_return_event,group_cnab_user,1,1,1,0 access_l10n_br_cnab_return_event_manager,access_l10n_br_cnab_return_event_manager,model_l10n_br_cnab_return_event,group_cnab_manager,1,1,1,1 access_l10n_br_cnab_return_lot_user,access_l10n_br_cnab_return_lot_user,model_l10n_br_cnab_return_lot,group_cnab_user,1,1,1,0 access_l10n_br_cnab_return_lot_manager,access_l10n_br_cnab_return_lot_manager,model_l10n_br_cnab_return_lot,group_cnab_manager,1,1,1,1 -access_l10n_br_cnab_mov_instruction_code_user,access_l10n_br_cnab_mov_instruction_code_user,model_l10n_br_cnab_mov_instruction_code,group_cnab_user,1,0,0,0 -access_l10n_br_cnab_mov_instruction_code_manager,access_l10n_br_cnab_mov_instruction_code_manager,model_l10n_br_cnab_mov_instruction_code,group_cnab_manager,1,1,1,1 access_l10n_br_cnab_change_methods_user,access_l10n_br_cnab_change_methods_user,model_l10n_br_cnab_change_methods,group_cnab_user,1,0,0,0 access_l10n_br_cnab_change_methods_manager,access_l10n_br_cnab_change_methods_manager,model_l10n_br_cnab_change_methods,group_cnab_manager,1,1,1,1 access_l10n_br_cnab_boleto_fields_uinvoice,l10n_br_cnab.boleto.fields invoice,model_l10n_br_cnab_boleto_fields,account.group_account_invoice,1,1,1,1 @@ -16,8 +12,6 @@ access_l10n_br_cnab_boleto_fields_manager,l10n_br_cnab.boleto.fields manager,mod access_l10n_br_cnab_payment_fields_uinvoice,l10n_br_cnab.payment.fields invoice,model_l10n_br_cnab_payment_fields,account.group_account_invoice,1,1,1,1 access_l10n_br_cnab_payment_fields_manager,l10n_br_cnab.payment.fields manager,model_l10n_br_cnab_payment_fields,account.group_account_manager,1,0,0,0 access_account_move_line_cnab_change_user,access_account_move_line_cnab_change_user,model_account_move_line_cnab_change,group_cnab_user,1,1,1,1 -access_l10n_br_cnab_boleto_wallet_code_manager,access_l10n_br_cnab_boleto_wallet_code manager,model_l10n_br_cnab_boleto_wallet_code,group_cnab_manager,1,1,1,1 -access_l10n_br_cnab_boleto_wallet_code_user,access_l10n_br_cnab_boleto_wallet_code user,model_l10n_br_cnab_boleto_wallet_code,group_cnab_user,1,0,0,0 access_l10n_br_cnab_code_manager,access_l10n_br_cnab_code manager,model_l10n_br_cnab_code,group_cnab_manager,1,1,1,1 access_l10n_br_cnab_code_user,access_l10n_br_cnab_code user,model_l10n_br_cnab_code,group_cnab_user,1,0,0,0 access_l10n_br_cnab_config_manager,access_l10n_br_cnab_config manager,model_l10n_br_cnab_config,group_cnab_manager,1,1,1,1 diff --git a/l10n_br_account_payment_order/views/account_move_line.xml b/l10n_br_account_payment_order/views/account_move_line.xml index 997421728fd3..c352712eeb9a 100644 --- a/l10n_br_account_payment_order/views/account_move_line.xml +++ b/l10n_br_account_payment_order/views/account_move_line.xml @@ -17,10 +17,6 @@ show - @@ -58,10 +54,6 @@ - @@ -80,10 +72,6 @@ - diff --git a/l10n_br_account_payment_order/views/account_payment_line.xml b/l10n_br_account_payment_order/views/account_payment_line.xml index 4ef6fefdb3b9..a254433ac4f5 100644 --- a/l10n_br_account_payment_order/views/account_payment_line.xml +++ b/l10n_br_account_payment_order/views/account_payment_line.xml @@ -91,10 +91,6 @@ name="movement_type" attrs="{'invisible': [('payment_method_code', '!=', '240')]}" /> - - - - - l10n_br_cnab.boleto.wallet.code.tree - l10n_br_cnab.boleto.wallet.code - - - - - - - - - - - - l10n_br_cnab.boleto.wallet.code.search - l10n_br_cnab.boleto.wallet.code - - - - - - - - - - - - - - - - - - - l10n_br_cnab.boleto.wallet.code.form.view - l10n_br_cnab.boleto.wallet.code - -
- - - - - - - - - -
- -
-
-
-
- - - CNAB Boleto Wallet Code - l10n_br_cnab.boleto.wallet.code - tree,form - {'group_by':['bank_id', 'payment_method_id']} - - - - -
diff --git a/l10n_br_account_payment_order/views/l10n_br_cnab_mov_instruction_code_view.xml b/l10n_br_account_payment_order/views/l10n_br_cnab_mov_instruction_code_view.xml deleted file mode 100644 index 8c511fbe8615..000000000000 --- a/l10n_br_account_payment_order/views/l10n_br_cnab_mov_instruction_code_view.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - - l10n_br_cnab.mov.instruction.code.tree - l10n_br_cnab.mov.instruction.code - - - - - - - - - - - - l10n_br_cnab.mov.instruction.code.search - l10n_br_cnab.mov.instruction.code - - - - - - - - - - - - - - - - - - - l10n_br_cnab.mov.instruction.code.form.view - l10n_br_cnab.mov.instruction.code - -
- - - - - - - - - -
- -
-
-
-
- - - CNAB Movement Instruction Code - l10n_br_cnab.mov.instruction.code - tree,form - {'group_by':['bank_id', 'payment_method_id']} - - - - -
diff --git a/l10n_br_account_payment_order/views/l10n_br_cnab_return_move_code_view.xml b/l10n_br_account_payment_order/views/l10n_br_cnab_return_move_code_view.xml deleted file mode 100644 index 485fa73ad7dd..000000000000 --- a/l10n_br_account_payment_order/views/l10n_br_cnab_return_move_code_view.xml +++ /dev/null @@ -1,86 +0,0 @@ - - - - - l10n_br_cnab.return.move.code.tree - l10n_br_cnab.return.move.code - - - - - - - - - - - - l10n_br_cnab.return.move.code.search - l10n_br_cnab.return.move.code - - - - - - - - - - - - - - - - - - - l10n_br_cnab.return.move.code.form.view - l10n_br_cnab.return.move.code - -
- - - - - - - -
- -
-
-
-
-
- - - CNAB Return Move Code - l10n_br_cnab.return.move.code - tree,form - {'group_by':['bank_id', 'payment_method_id']} - - - - -