diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
| commit | 3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch) | |
| tree | a44932296ef4a9b71d5f010906253d8c53727726 /addons/l10n_ch/models/res_company.py | |
| parent | 0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff) | |
initial commit 2
Diffstat (limited to 'addons/l10n_ch/models/res_company.py')
| -rw-r--r-- | addons/l10n_ch/models/res_company.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/addons/l10n_ch/models/res_company.py b/addons/l10n_ch/models/res_company.py new file mode 100644 index 00000000..b30e8e13 --- /dev/null +++ b/addons/l10n_ch/models/res_company.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import fields, models + +class Company(models.Model): + _inherit = "res.company" + + l10n_ch_isr_preprinted_account = fields.Boolean(string='Preprinted account', compute='_compute_l10n_ch_isr', inverse='_set_l10n_ch_isr') + l10n_ch_isr_preprinted_bank = fields.Boolean(string='Preprinted bank', compute='_compute_l10n_ch_isr', inverse='_set_l10n_ch_isr') + l10n_ch_isr_print_bank_location = fields.Boolean(string='Print bank location', default=False, help='Boolean option field indicating whether or not the alternate layout (the one printing bank name and address) must be used when generating an ISR.') + l10n_ch_isr_scan_line_left = fields.Float(string='Scan line horizontal offset (mm)', compute='_compute_l10n_ch_isr', inverse='_set_l10n_ch_isr') + l10n_ch_isr_scan_line_top = fields.Float(string='Scan line vertical offset (mm)', compute='_compute_l10n_ch_isr', inverse='_set_l10n_ch_isr') + + def _compute_l10n_ch_isr(self): + get_param = self.env['ir.config_parameter'].sudo().get_param + for company in self: + company.l10n_ch_isr_preprinted_account = bool(get_param('l10n_ch.isr_preprinted_account', default=False)) + company.l10n_ch_isr_preprinted_bank = bool(get_param('l10n_ch.isr_preprinted_bank', default=False)) + company.l10n_ch_isr_scan_line_top = float(get_param('l10n_ch.isr_scan_line_top', default=0)) + company.l10n_ch_isr_scan_line_left = float(get_param('l10n_ch.isr_scan_line_left', default=0)) + + def _set_l10n_ch_isr(self): + set_param = self.env['ir.config_parameter'].sudo().set_param + for company in self: + set_param("l10n_ch.isr_preprinted_account", company.l10n_ch_isr_preprinted_account) + set_param("l10n_ch.isr_preprinted_bank", company.l10n_ch_isr_preprinted_bank) + set_param("l10n_ch.isr_scan_line_top", company.l10n_ch_isr_scan_line_top) + set_param("l10n_ch.isr_scan_line_left", company.l10n_ch_isr_scan_line_left) |
