diff --git a/account_ux/__manifest__.py b/account_ux/__manifest__.py index 0a615197a..58432cc0d 100644 --- a/account_ux/__manifest__.py +++ b/account_ux/__manifest__.py @@ -19,7 +19,7 @@ ############################################################################## { 'name': 'Account UX', - 'version': "16.0.1.1.0", + 'version': "16.0.1.2.0", 'category': 'Accounting', 'sequence': 14, 'summary': '', @@ -32,6 +32,7 @@ 'account', "base_vat", "account_debit_note", + "account_accountant", ], 'data': [ 'security/account_ux_security.xml', @@ -45,6 +46,7 @@ 'views/account_partial_reconcile_views.xml', 'views/account_account_views.xml', 'views/account_move_views.xml', + 'views/bank_rec_widget_views.xml' ], 'demo': [ ], diff --git a/account_ux/models/__init__.py b/account_ux/models/__init__.py index f37443813..8aba278c5 100644 --- a/account_ux/models/__init__.py +++ b/account_ux/models/__init__.py @@ -11,3 +11,4 @@ from . import res_partner from . import res_currency_rate from . import account_move +from . import account_bank_statement_line diff --git a/account_ux/models/account_bank_statement_line.py b/account_ux/models/account_bank_statement_line.py new file mode 100644 index 000000000..af4c640f3 --- /dev/null +++ b/account_ux/models/account_bank_statement_line.py @@ -0,0 +1,30 @@ +############################################################################## +# For copyright and license notices, see __manifest__.py file in module root +# directory +############################################################################## +from odoo import models +from odoo.exceptions import UserError + + +class AccountBankStatementLine(models.Model): + _inherit = 'account.bank.statement.line' + + def action_undo_reconciliation(self): + ''' Los statement lines que fueron creados en versiones < 15.0 no tienen un accounnt.move.line asociado, para + que el circuito completo de desconciliacion y conciliacion puedan funcionar debemos corregir esto creando + manualmente un asiento similar al que se genera automaticamente. Tambien, las bases que fueron migrades tienen + el problema donde reconocen que los statement.lines tienen si tiene un aml, pero este es el del pago y al + desconciliar modifica el asiento del pago dejandolo incorrecto. En este metodo: + 1. Identificamos los st.lines que tengan am que sean pago y los corregimos + 2. creamos un nuevo asiento similar al que se genera automatico al crear el st.line. + 3, desvinculamos el am del pago del st.line ''' + invoice_names = self.line_ids.filtered(lambda x: x.account_type in ['asset_receivable', 'liability_payable']).mapped('name') + if len(invoice_names)==1: + body = 'La factura {} dejó de figurar como pagada.'.format(invoice_names[0]) + self.move_id.message_post(body=body) + if len(invoice_names)>1: + invoice_names_formatted = ", ".join(invoice_names) + body = 'Las facturas {} dejaron de figurar como pagadas.'.format(invoice_names_formatted) + self.move_id.message_post(body=body) + super().action_undo_reconciliation() + diff --git a/account_ux/views/bank_rec_widget_views.xml b/account_ux/views/bank_rec_widget_views.xml new file mode 100644 index 000000000..3deaf8baf --- /dev/null +++ b/account_ux/views/bank_rec_widget_views.xml @@ -0,0 +1,15 @@ + + + + bank.rec.widget.inherit + bank.rec.widget + + 90 + primary + + + + +