Files
enterprise-addons/l10n_bg_saft/models/chart_template.py
T

42 lines
2.0 KiB
Python

# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import models
from odoo.addons.account.models.chart_template import template
class AccountChartTemplate(models.AbstractModel):
_inherit = 'account.chart.template'
@template('bg', 'account.tax')
def _get_bg_saft_account_tax(self):
return self._parse_csv('bg', 'account.tax', module='l10n_bg_saft')
@template('bg', 'account.account')
def _get_bg_saft_account_code(self):
company = self.env.company
def update_account_code(account_code, saft_code):
accounts = self.env['account.account'].with_company(company).search([
*self.env['account.account']._check_company_domain(company),
('code', '=like', account_code),
('l10n_bg_saft_account_code', '=', False),
])
for account in accounts:
account.l10n_bg_saft_account_code = saft_code
if company.bank_account_code_prefix:
update_account_code(company.bank_account_code_prefix + "%", '503')
if company.cash_account_code_prefix:
update_account_code(company.cash_account_code_prefix + "%", '501')
if company.transfer_account_code_prefix:
update_account_code(company.transfer_account_code_prefix + "%", '434')
if company.default_cash_difference_expense_account_id:
update_account_code(company.default_cash_difference_expense_account_id.code, '443')
if company.default_cash_difference_income_account_id:
update_account_code(company.default_cash_difference_income_account_id.code, '443')
if company.account_journal_early_pay_discount_gain_account_id:
update_account_code(company.account_journal_early_pay_discount_gain_account_id.code, '729')
if company.account_journal_early_pay_discount_loss_account_id:
update_account_code(company.account_journal_early_pay_discount_loss_account_id.code, '623')
return self._parse_csv('bg', 'account.account', module='l10n_bg_saft')