diff options
| author | Yannick Tivisse <yti@odoo.com> | 2018-01-05 13:02:52 +0100 |
|---|---|---|
| committer | Yannick Tivisse <yti@odoo.com> | 2018-01-05 13:02:52 +0100 |
| commit | 1276ca9dbf15fb633eebe2e901c8f5c539e5c384 (patch) | |
| tree | 3cd87e6f11191d8ae74a887bbbd0c4deeb26fd93 | |
| parent | bc8f7a44d6e2c4153dbca9c06d3e5ecfea5a9855 (diff) | |
[FIX] l10n_be_hr_payroll: Reset transport information on mode change
| -rw-r--r-- | addons/l10n_be_hr_payroll/models/l10n_be_hr_payroll.py | 10 | ||||
| -rw-r--r-- | addons/l10n_be_hr_payroll_fleet/models/hr_contract.py | 7 |
2 files changed, 17 insertions, 0 deletions
diff --git a/addons/l10n_be_hr_payroll/models/l10n_be_hr_payroll.py b/addons/l10n_be_hr_payroll/models/l10n_be_hr_payroll.py index e8bfc7e1673..fa25a65d8d8 100644 --- a/addons/l10n_be_hr_payroll/models/l10n_be_hr_payroll.py +++ b/addons/l10n_be_hr_payroll/models/l10n_be_hr_payroll.py @@ -176,6 +176,16 @@ class HrContract(models.Model): contract.double_holidays = contract.wage * 0.92 contract.thirteen_month = contract.wage + @api.onchange('transport_mode') + def _onchange_transport_mode(self): + if self.transport_mode != 'company_car': + self.fuel_card = 0 + self.company_car_total_depreciated_cost = 0 + if self.transport_mode != 'others': + self.others_reimbursed_amount = 0 + if self.transport_mode != 'public_transports': + self.public_transport_reimbursed_amount = 0 + @api.onchange('mobile', 'mobile_plus') def _onchange_mobile(self): if self.mobile_plus and not self.mobile: diff --git a/addons/l10n_be_hr_payroll_fleet/models/hr_contract.py b/addons/l10n_be_hr_payroll_fleet/models/hr_contract.py index 7f802498934..f774eaa0436 100644 --- a/addons/l10n_be_hr_payroll_fleet/models/hr_contract.py +++ b/addons/l10n_be_hr_payroll_fleet/models/hr_contract.py @@ -46,6 +46,13 @@ class HrContract(models.Model): self.car_id = self.env['fleet.vehicle'].search([('driver_id', '=', self.employee_id.address_home_id.id)], limit=1) return {'domain': {'car_id': self._get_available_cars_domain()}} + @api.onchange('transport_mode') + def _onchange_transport_mode(self): + super(HrContract, self)._onchange_transport_mode() + if self.transport_mode != 'company_car': + self.car_id = False + self.new_car_model_id = False + def _get_available_cars_domain(self): return ['|', ('driver_id', '=', False), ('driver_id', '=', self.employee_id.address_home_id.id)] |
