File: account_move_line.py

package info (click to toggle)
odoo 18.0.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 878,716 kB
  • sloc: javascript: 927,937; python: 685,670; xml: 388,524; sh: 1,033; sql: 415; makefile: 26
file content (18 lines) | stat: -rw-r--r-- 875 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from odoo import models


class AccountMoveLine(models.Model):
    _inherit = 'account.move.line'

    def _compute_account_id(self):
        # OVERRIDE
        super()._compute_account_id()

        for line in self.filtered(lambda l: l.company_id.country_code == 'TR'
                                  and l.move_id.move_type == 'out_refund'
                                  and l.display_type == 'product'
                                  ):
            if (product := line.product_id) and product.with_company(line.company_id).l10n_tr_default_sales_return_account_id:
                line.account_id = product.with_company(line.company_id).l10n_tr_default_sales_return_account_id
            elif (journal := line.move_id.journal_id) and journal.l10n_tr_default_sales_return_account_id:
                line.account_id = journal.l10n_tr_default_sales_return_account_id