25 lines
1.3 KiB
Python
25 lines
1.3 KiB
Python
# -*- coding: utf-8 -*-
|
|
from odoo import models
|
|
|
|
|
|
class AccountChartTemplate(models.AbstractModel):
|
|
_inherit = 'account.chart.template'
|
|
|
|
def _load(self, template_code, company, install_demo):
|
|
"""Remove the payment methods that are created for the company and unset journals before installing the chart of accounts.
|
|
|
|
Keeping these existing pos.payment.method records and pos.config journals interferes with the installation of chart of accounts
|
|
because pos.payment.method model has fields linked to account.journal and account.account records that are
|
|
deleted during the loading of chart of accounts.
|
|
"""
|
|
reload_template = template_code == company.chart_template
|
|
if not reload_template:
|
|
self.env['pos.payment.method'].with_context(active_test=False).search(self.env['pos.payment.method']._check_company_domain(company)).unlink()
|
|
self.env["pos.config"].with_context(active_test=False).search(self.env['pos.config']._check_company_domain(company)).write({
|
|
'journal_id': False,
|
|
'invoice_journal_id': False,
|
|
})
|
|
result = super()._load(template_code, company, install_demo)
|
|
self.env['pos.config'].post_install_pos_localisation(companies=company)
|
|
return result
|