summaryrefslogtreecommitdiff
path: root/addons/l10n_nl/models/account_journal.py
blob: 5fc726b0d756f82b44d29a56f4c5897a30e35bb2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# -*- coding: utf-8 -*-

from odoo import api, fields, models, _


class AccountJournal(models.Model):
    _inherit = 'account.journal'

    @api.model
    def _fill_missing_values(self, vals):
        super()._fill_missing_values(vals)

        if vals.get('type') != 'purchase':
            return

        company = self.env['res.company'].browse(vals['company_id']) if vals.get('company_id') else self.env.company
        if company.country_id.code == "NL":
            type_control_ids = vals.get('type_control_ids', [])
            type_control_ids.append(self.env.ref('account.data_account_type_direct_costs').id)
            vals['type_control_ids'] = [(6, 0, type_control_ids)]

    @api.model
    def _prepare_liquidity_account_vals(self, company, code, vals):
        # OVERRIDE
        account_vals = super()._prepare_liquidity_account_vals(company, code, vals)

        if company.country_id.code == 'NL':
            # Ensure the newly liquidity accounts have the right account tag in order to be part
            # of the Dutch financial reports.
            account_vals.setdefault('tag_ids', [])
            account_vals['tag_ids'].append((4, self.env.ref('l10n_nl.account_tag_25').id))

        return account_vals