From f572fa720e6d8837b1b9e3e7d32010b88cefac8a Mon Sep 17 00:00:00 2001 From: Kevin Baptiste Date: Wed, 8 Jul 2020 10:25:20 +0000 Subject: [PATCH] [FIX] fleet: store driver on log services Changing the driver on a car shouldn't change the fleet.vehicle.log.services associated. We should keep the driver assigned to the car at the time the service was done. closes odoo/odoo#54264 Taskid: 2208080 X-original-commit: 5422bb8d6e3db5d6932570116af74ea634c40a51 Signed-off-by: Paul Morelle --- addons/fleet/models/fleet_vehicle_cost.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/addons/fleet/models/fleet_vehicle_cost.py b/addons/fleet/models/fleet_vehicle_cost.py index dd1afb3ea94..f59d65878d9 100644 --- a/addons/fleet/models/fleet_vehicle_cost.py +++ b/addons/fleet/models/fleet_vehicle_cost.py @@ -151,7 +151,7 @@ class FleetVehicleLogServices(models.Model): date = fields.Date(help='Date when the cost has been executed') company_id = fields.Many2one('res.company', 'Company', default=lambda self: self.env.company) currency_id = fields.Many2one('res.currency', related='company_id.currency_id') - purchaser_id = fields.Many2one(related='vehicle_id.driver_id', string="Driver") + purchaser_id = fields.Many2one('res.partner', string="Driver", compute='_compute_purchaser_id', readonly=False, store=True) inv_ref = fields.Char('Vendor Reference') vendor_id = fields.Many2one('res.partner', 'Vendor') notes = fields.Text() @@ -188,4 +188,9 @@ class FleetVehicleLogServices(models.Model): # data as it would result to the creation of a # odometer log with 0, which is to be avoided del data['odometer'] - return super(FleetVehicleLogServices, self).create(vals_list) \ No newline at end of file + return super(FleetVehicleLogServices, self).create(vals_list) + + @api.depends('vehicle_id') + def _compute_purchaser_id(self): + for service in self: + service.purchaser_id = service.vehicle_id.driver_id