Files
enterprise-addons/l10n_ch_hr_payroll/models/hr_rule_parameter.py
T

22 lines
991 B
Python

# -*- coding:utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import api, models, _
from odoo.tools import ormcache
from odoo.exceptions import UserError
class HrRuleParameter(models.Model):
_inherit = 'hr.rule.parameter'
@api.model
@ormcache('code', 'date', 'tuple(self.env.context.get("allowed_company_ids", []))')
def _get_parameter_from_code(self, code, date=None, raise_if_not_found=True):
if not code.startswith('l10n_ch_withholding_tax_rates_'):
return super()._get_parameter_from_code(code, date=date, raise_if_not_found=raise_if_not_found)
try:
res = super()._get_parameter_from_code(code, date=date, raise_if_not_found=raise_if_not_found)
except UserError as e:
raise UserError(_("No tax rates found for the employee canton. Make sure you've actually imported using the wizard under Configuration -> Swiss -> Import Tax Rates")) from e
return res