From 3751379f1e9a4c215fb6eb898b4ccc67659b9ace Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Tue, 10 May 2022 21:51:50 +0700 Subject: initial commit 2 --- addons/l10n_mx/models/chart_template.py | 49 +++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 addons/l10n_mx/models/chart_template.py (limited to 'addons/l10n_mx/models/chart_template.py') diff --git a/addons/l10n_mx/models/chart_template.py b/addons/l10n_mx/models/chart_template.py new file mode 100644 index 00000000..d267febb --- /dev/null +++ b/addons/l10n_mx/models/chart_template.py @@ -0,0 +1,49 @@ +# coding: utf-8 +# Copyright 2016 Vauxoo (https://www.vauxoo.com) +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +from odoo import models, api, _ + + +class AccountChartTemplate(models.Model): + _inherit = "account.chart.template" + + @api.model + def generate_journals(self, acc_template_ref, company, journals_dict=None): + """Set the tax_cash_basis_journal_id on the company""" + res = super(AccountChartTemplate, self).generate_journals( + acc_template_ref, company, journals_dict=journals_dict) + if not self == self.env.ref('l10n_mx.mx_coa'): + return res + journal_basis = self.env['account.journal'].search([ + ('company_id', '=', company.id), + ('type', '=', 'general'), + ('code', '=', 'CBMX')], limit=1) + company.write({'tax_cash_basis_journal_id': journal_basis.id}) + return res + + def _prepare_all_journals(self, acc_template_ref, company, journals_dict=None): + """Create the tax_cash_basis_journal_id""" + res = super(AccountChartTemplate, self)._prepare_all_journals( + acc_template_ref, company, journals_dict=journals_dict) + if not self == self.env.ref('l10n_mx.mx_coa'): + return res + account = acc_template_ref.get(self.env.ref('l10n_mx.cuenta118_01').id) + res.append({ + 'type': 'general', + 'name': _('Effectively Paid'), + 'code': 'CBMX', + 'company_id': company.id, + 'default_account_id': account, + 'show_on_dashboard': True, + }) + return res + + @api.model + def _prepare_transfer_account_for_direct_creation(self, name, company): + res = super(AccountChartTemplate, self)._prepare_transfer_account_for_direct_creation(name, company) + if company.country_id.code == 'MX': + xml_id = self.env.ref('l10n_mx.account_tag_102_01').id + res.setdefault('tag_ids', []) + res['tag_ids'].append((4, xml_id)) + return res -- cgit v1.2.3