[IMP] fleet: Add model types (car, bike) on vehicles
closes odoo/odoo#48300 Taskid: 2172282 Related: odoo/enterprise#9467 Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This commit is contained in:
@@ -267,181 +267,226 @@
|
||||
<record id="model_corsa" model="fleet.vehicle.model">
|
||||
<field name="name">Corsa</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_astra" model="fleet.vehicle.model">
|
||||
<field name="name">Astra</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_agila" model="fleet.vehicle.model">
|
||||
<field name="name">Agila</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_combotour" model="fleet.vehicle.model">
|
||||
<field name="name">Combo Tour</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_meriva" model="fleet.vehicle.model">
|
||||
<field name="name">Meriva</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_astragtc" model="fleet.vehicle.model">
|
||||
<field name="name">AstraGTC</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_zafira" model="fleet.vehicle.model">
|
||||
<field name="name">Zafira</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_zafiratourer" model="fleet.vehicle.model">
|
||||
<field name="name">Zafira Tourer</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_insignia" model="fleet.vehicle.model">
|
||||
<field name="name">Insignia</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_mokka" model="fleet.vehicle.model">
|
||||
<field name="name">Mokka</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_antara" model="fleet.vehicle.model">
|
||||
<field name="name">Antara</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_ampera" model="fleet.vehicle.model">
|
||||
<field name="name">Ampera</field>
|
||||
<field name="brand_id" ref="brand_opel" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_a1" model="fleet.vehicle.model">
|
||||
<field name="name">A1</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_a3" model="fleet.vehicle.model">
|
||||
<field name="name">A3</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_a4" model="fleet.vehicle.model">
|
||||
<field name="name">A4</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_a5" model="fleet.vehicle.model">
|
||||
<field name="name">A5</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_a6" model="fleet.vehicle.model">
|
||||
<field name="name">A6</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_a7" model="fleet.vehicle.model">
|
||||
<field name="name">A7</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_a8" model="fleet.vehicle.model">
|
||||
<field name="name">A8</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_q3" model="fleet.vehicle.model">
|
||||
<field name="name">Q3</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_q5" model="fleet.vehicle.model">
|
||||
<field name="name">Q5</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_q7" model="fleet.vehicle.model">
|
||||
<field name="name">Q7</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_tt" model="fleet.vehicle.model">
|
||||
<field name="name">TT</field>
|
||||
<field name="brand_id" ref="brand_audi" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_serie1" model="fleet.vehicle.model">
|
||||
<field name="name">Serie 1</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_serie3" model="fleet.vehicle.model">
|
||||
<field name="name">Serie 3</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_serie5" model="fleet.vehicle.model">
|
||||
<field name="name">Serie 5</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_serie6" model="fleet.vehicle.model">
|
||||
<field name="name">Serie 6</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_serie7" model="fleet.vehicle.model">
|
||||
<field name="name">Serie 7</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_seriex" model="fleet.vehicle.model">
|
||||
<field name="name">Serie X</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_seriez4" model="fleet.vehicle.model">
|
||||
<field name="name">Serie Z4</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_seriem" model="fleet.vehicle.model">
|
||||
<field name="name">Serie M</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_seriehybrid" model="fleet.vehicle.model">
|
||||
<field name="name">Serie Hybrid</field>
|
||||
<field name="brand_id" ref="brand_bmw" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classa" model="fleet.vehicle.model">
|
||||
<field name="name">Class A</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classb" model="fleet.vehicle.model">
|
||||
<field name="name">Class B</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classc" model="fleet.vehicle.model">
|
||||
<field name="name">Class C</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classcl" model="fleet.vehicle.model">
|
||||
<field name="name">Class CL</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classcls" model="fleet.vehicle.model">
|
||||
<field name="name">Class CLS</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classe" model="fleet.vehicle.model">
|
||||
<field name="name">Class E</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classm" model="fleet.vehicle.model">
|
||||
<field name="name">Class M</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classgl" model="fleet.vehicle.model">
|
||||
<field name="name">Class GL</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classglk" model="fleet.vehicle.model">
|
||||
<field name="name">Class GLK</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classr" model="fleet.vehicle.model">
|
||||
<field name="name">Class R</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classs" model="fleet.vehicle.model">
|
||||
<field name="name">Class S</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classslk" model="fleet.vehicle.model">
|
||||
<field name="name">Class SLK</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
<record id="model_classsls" model="fleet.vehicle.model">
|
||||
<field name="name">SLS</field>
|
||||
<field name="brand_id" ref="brand_mercedes" />
|
||||
<field name="vehicle_type">car</field>
|
||||
</record>
|
||||
</odoo>
|
||||
|
||||
@@ -86,9 +86,10 @@ class FleetVehicle(models.Model):
|
||||
contract_renewal_name = fields.Text(compute='_compute_contract_reminder', string='Name of contract to renew soon')
|
||||
contract_renewal_total = fields.Text(compute='_compute_contract_reminder', string='Total of contracts due or overdue minus one')
|
||||
car_value = fields.Float(string="Catalog Value (VAT Incl.)", help='Value of the bought vehicle')
|
||||
net_car_value = fields.Float(string="Purchase Value", help="Purchase Value of the car")
|
||||
net_car_value = fields.Float(string="Purchase Value", help="Purchase value of the vehicle")
|
||||
residual_value = fields.Float()
|
||||
plan_to_change_car = fields.Boolean(related='driver_id.plan_to_change_car', store=True, readonly=False)
|
||||
vehicle_type = fields.Selection(related='model_id.vehicle_type')
|
||||
|
||||
@api.depends('model_id.brand_id.name', 'model_id.name', 'license_plate')
|
||||
def _compute_vehicle_name(self):
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import api, fields, models, tools, _
|
||||
from odoo import api, fields, models, tools
|
||||
|
||||
|
||||
class FleetVehicleModel(models.Model):
|
||||
@@ -16,6 +16,7 @@ class FleetVehicleModel(models.Model):
|
||||
domain=lambda self: [('groups_id', 'in', self.env.ref('fleet.fleet_group_manager').id)])
|
||||
image_128 = fields.Image(related='brand_id.image_128', readonly=True)
|
||||
active = fields.Boolean(default=True)
|
||||
vehicle_type = fields.Selection([('car', 'Car'), ('bike', 'Bike')], default='car', required=True)
|
||||
|
||||
@api.depends('name', 'brand_id')
|
||||
def name_get(self):
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
<group>
|
||||
<group>
|
||||
<field name="active" invisible="1"/>
|
||||
<field name="vehicle_type"/>
|
||||
<field name="manager_id" groups="fleet.fleet_group_manager"/>
|
||||
</group>
|
||||
</group>
|
||||
@@ -56,6 +57,7 @@
|
||||
<tree string="Models">
|
||||
<field name="brand_id" />
|
||||
<field name="name" />
|
||||
<field name="vehicle_type"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
@@ -171,7 +173,7 @@
|
||||
</record>
|
||||
|
||||
<record id='fleet_vehicle_model_brand_action' model='ir.actions.act_window'>
|
||||
<field name="name">Car Manufacturers</field>
|
||||
<field name="name">Manufacturers</field>
|
||||
<field name="res_model">fleet.vehicle.model.brand</field>
|
||||
<field name="view_mode">kanban,tree,form</field>
|
||||
<field name="help" type="html">
|
||||
|
||||
@@ -39,7 +39,8 @@
|
||||
class="oe_stat_button"
|
||||
icon="fa-tachometer"
|
||||
context="{'xml_id':'fleet_vehicle_odometer_action'}"
|
||||
help="show the odometer logs for this vehicle" >
|
||||
help="show the odometer logs for this vehicle"
|
||||
attrs="{'invisible': [('vehicle_type', '!=', 'car')]}">
|
||||
<field name="odometer_count" widget="statinfo" string="Odometer"/>
|
||||
</button>
|
||||
</div>
|
||||
@@ -60,6 +61,7 @@
|
||||
<group col="2">
|
||||
<group string="Driver">
|
||||
<field name="active" invisible="1"/>
|
||||
<field name="vehicle_type" invisible="1"/>
|
||||
<field name="driver_id" domain="['|', ('company_id', '=', False ), ('company_id', '=', company_id)]"/>
|
||||
<label for="future_driver_id"/>
|
||||
<div class="o_row">
|
||||
@@ -75,12 +77,12 @@
|
||||
<field name="location"/>
|
||||
</group>
|
||||
<group string="Vehicle">
|
||||
<label for="odometer"/>
|
||||
<div class="o_row">
|
||||
<label for="odometer" attrs="{'invisible': [('vehicle_type', '!=', 'car')]}"/>
|
||||
<div class="o_row" attrs="{'invisible': [('vehicle_type', '!=', 'car')]}">
|
||||
<field name="odometer"/>
|
||||
<field name="odometer_unit"/>
|
||||
</div>
|
||||
<field name="acquisition_date"/>
|
||||
<field name="acquisition_date" attrs="{'invisible': [('vehicle_type', '!=', 'car')]}"/>
|
||||
<field name="vin_sn"/>
|
||||
<field name="car_value" widget="monetary"/>
|
||||
<field name="net_car_value" widget="monetary"/>
|
||||
@@ -92,12 +94,12 @@
|
||||
<field name="first_contract_date"/>
|
||||
</group>
|
||||
<group string="Model">
|
||||
<field name="seats"/>
|
||||
<field name="doors"/>
|
||||
<field name="seats" attrs="{'invisible': [('vehicle_type', '!=', 'car')]}"/>
|
||||
<field name="doors" attrs="{'invisible': [('vehicle_type', '!=', 'car')]}"/>
|
||||
<field name="color"/>
|
||||
<field name="model_year"/>
|
||||
</group>
|
||||
<group string="Engine">
|
||||
<group string="Engine" attrs="{'invisible': [('vehicle_type', '!=', 'car')]}">
|
||||
<field name="transmission"/>
|
||||
<field name="fuel_type"/>
|
||||
<label for="co2"/>
|
||||
|
||||
Reference in New Issue
Block a user