diff --git a/addons/hr_expense/models/hr_expense.py b/addons/hr_expense/models/hr_expense.py index a39efa59ab9..411700f6a72 100644 --- a/addons/hr_expense/models/hr_expense.py +++ b/addons/hr_expense/models/hr_expense.py @@ -848,8 +848,12 @@ class HrExpenseSheet(models.Model): @api.model def _default_bank_journal_id(self): + company_journal_id = self.env.company.company_expense_journal_id + if company_journal_id: + return company_journal_id default_company_id = self.default_get(['company_id'])['company_id'] - return self.env['account.journal'].search([('type', 'in', ['cash', 'bank']), ('company_id', '=', default_company_id)], limit=1) + journal = self.env['account.journal'].search([('type', 'in', ['cash', 'bank']), ('company_id', '=', default_company_id)], limit=1) + return journal name = fields.Char('Expense Report Summary', required=True, tracking=True) expense_line_ids = fields.One2many('hr.expense', 'sheet_id', string='Expense Lines', copy=False) diff --git a/addons/hr_expense/models/res_company.py b/addons/hr_expense/models/res_company.py index a7686f48774..b5c1909d462 100644 --- a/addons/hr_expense/models/res_company.py +++ b/addons/hr_expense/models/res_company.py @@ -2,8 +2,21 @@ from odoo import fields, models + class ResCompany(models.Model): _inherit = "res.company" - expense_journal_id = fields.Many2one('account.journal', string='Default Expense Journal', check_company=True, domain="[('type', '=', 'purchase'), ('company_id', '=', company_id)]", - help="The Default journal for the company used when the expense is done.") + expense_journal_id = fields.Many2one( + "account.journal", + string="Default Expense Journal", + check_company=True, + domain="[('type', '=', 'purchase'), ('company_id', '=', company_id)]", + help="The company's default journal used when an employee expense is created.", + ) + company_expense_journal_id = fields.Many2one( + "account.journal", + string="Default Company Expense Journal", + check_company=True, + domain="[('type', 'in', ['cash', 'bank']), ('company_id', '=', company_id)]", + help="The company's default journal used when a company expense is created.", + ) diff --git a/addons/hr_expense/models/res_config_settings.py b/addons/hr_expense/models/res_config_settings.py index 7bcbb559d8e..b9db4a03fdc 100644 --- a/addons/hr_expense/models/res_config_settings.py +++ b/addons/hr_expense/models/res_config_settings.py @@ -17,6 +17,7 @@ class ResConfigSettings(models.TransientModel): module_hr_payroll_expense = fields.Boolean(string='Reimburse Expenses in Payslip') module_hr_expense_extract = fields.Boolean(string='Send bills to OCR to generate expenses') expense_journal_id = fields.Many2one('account.journal', related='company_id.expense_journal_id', readonly=False) + company_expense_journal_id = fields.Many2one('account.journal', related='company_id.company_expense_journal_id', readonly=False) @api.model def get_values(self): diff --git a/addons/hr_expense/views/res_config_settings_views.xml b/addons/hr_expense/views/res_config_settings_views.xml index ba85a1ad6a8..f2b16ea85ca 100644 --- a/addons/hr_expense/views/res_config_settings_views.xml +++ b/addons/hr_expense/views/res_config_settings_views.xml @@ -61,22 +61,34 @@ -