[ADD][FIX]Log odometer unit on change vehicle + field odometer value and unit concatened in all forms

bzr revid: dle@openerp.com-20121002124334-ordn8cx4z8dsfw3h
This commit is contained in:
Denis Ledoux dle@openerp.com 2012-10-02 14:43:34 +02:00
parent 70756e82b5
commit 3cf6b50a83
3 changed files with 88 additions and 17 deletions

View File

@ -1865,6 +1865,8 @@ gg==
<field name="acquisition_date" eval="time.strftime('%Y-%m-%d 2:00:00')" />
<field name="state" ref="vehicle_state_active"/>
<field name="odometer_unit">kilometers</field>
<field name="car_value">20000</field>
<field name="leasing_value">450</field>
</record>
<record id="vehicle_2" model="fleet.vehicle">
@ -1878,6 +1880,8 @@ gg==
<field name="acquisition_date" eval="time.strftime('%Y-%m-%d 2:00:00')" />
<field name="state" ref="vehicle_state_inactive"/>
<field name="odometer_unit">kilometers</field>
<field name="car_value">16000</field>
<field name="leasing_value">400</field>
</record>
<record id="vehicle_3" model="fleet.vehicle">
@ -1891,6 +1895,8 @@ gg==
<field name="acquisition_date" eval="time.strftime('%Y-%m-%d 2:00:00')" />
<field name="state" ref="vehicle_state_active"/>
<field name="odometer_unit">kilometers</field>
<field name="car_value">20000</field>
<field name="leasing_value">450</field>
</record>
<record id="vehicle_4" model="fleet.vehicle">
@ -1904,6 +1910,8 @@ gg==
<field name="acquisition_date" eval="time.strftime('%Y-%m-%d 2:00:00')" />
<field name="state" ref="vehicle_state_active"/>
<field name="odometer_unit">kilometers</field>
<field name="car_value">20000</field>
<field name="leasing_value">450</field>
</record>
<record id="vehicle_5" model="fleet.vehicle">
@ -1917,6 +1925,8 @@ gg==
<field name="acquisition_date" eval="time.strftime('%Y-%m-%d 2:00:00')" />
<field name="state" ref="vehicle_state_active"/>
<field name="odometer_unit">kilometers</field>
<field name="car_value">18000</field>
<field name="leasing_value">425</field>
</record>
<record id="type_service_1" model="fleet.service.type">

View File

@ -277,7 +277,6 @@ class fleet_vehicle(osv.Model):
'log_services' : fields.one2many('fleet.vehicle.log.services','vehicle_id', 'Services Logs'),
'log_insurances' : fields.one2many('fleet.vehicle.log.insurance','vehicle_id', 'Insurances'),
'acquisition_date' : fields.date('Acquisition Date', required=False, help='Date when the vehicle has been bought'),
'acquisition_price' : fields.integer('Price', help='Price of the bought vehicle'),
'color' : fields.char('Color',size=32, help='Color of the vehicle'),
'state': fields.many2one('fleet.vehicle.state', 'State', help='Current state of the vehicle', ),
'location' : fields.char('Location',size=32, help='Location of the vehicle (garage, ...)'),
@ -302,7 +301,8 @@ class fleet_vehicle(osv.Model):
'insurance_renewal_overdue' : fields.function(get_overdue_insurance_reminder,type="integer",string='Insurance Renewal Overdue',store=True),
'next_service_date' : fields.function(get_next_service_reminder,type="date",string='Next Service Due Date',store=False),
'car_value': fields.float('Car value', help='Value of the bought vehicle'),
'leasing_value': fields.float('Leasing value',help='Value of the leasing(Monthly, usually'),
}
_defaults = {
@ -378,7 +378,20 @@ class fleet_vehicle_odometer(osv.Model):
def _vehicle_log_name_get_fnc(self, cr, uid, ids, prop, unknow_none, context=None):
res = self.name_get(cr, uid, ids, context=context)
return dict(res)
def on_change_vehicle(self, cr, uid, ids, vehicle_id, context=None):
if not vehicle_id:
return {}
odometer_unit = self.pool.get('fleet.vehicle').browse(cr, uid, vehicle_id, context=context).odometer_unit
return {
'value' : {
'unit' : odometer_unit,
}
}
_columns = {
'name' : fields.function(_vehicle_log_name_get_fnc, type="char", string='Name', store=True),
@ -396,6 +409,19 @@ class fleet_vehicle_log_fuel(osv.Model):
_inherits = {'fleet.vehicle.odometer': 'odometer_id'}
def on_change_vehicle(self, cr, uid, ids, vehicle_id, context=None):
if not vehicle_id:
return {}
odometer_unit = self.pool.get('fleet.vehicle').browse(cr, uid, vehicle_id, context=context).odometer_unit
return {
'value' : {
'unit' : odometer_unit,
}
}
def on_change_liter(self, cr, uid, ids, liter, price_per_liter, amount, context=None):
if liter > 0 and price_per_liter > 0:
@ -451,6 +477,19 @@ class fleet_vehicle_log_fuel(osv.Model):
class fleet_vehicle_log_services(osv.Model):
def on_change_vehicle(self, cr, uid, ids, vehicle_id, context=None):
if not vehicle_id:
return {}
odometer_unit = self.pool.get('fleet.vehicle').browse(cr, uid, vehicle_id, context=context).odometer_unit
return {
'value' : {
'unit' : odometer_unit,
}
}
_inherits = {'fleet.vehicle.odometer': 'odometer_id'}
_name = 'fleet.vehicle.log.services'
@ -485,6 +524,19 @@ class fleet_insurance_state(osv.Model):
class fleet_vehicle_log_insurance(osv.Model):
_inherits = {'fleet.vehicle.odometer': 'odometer_id'}
def on_change_vehicle(self, cr, uid, ids, vehicle_id, context=None):
if not vehicle_id:
return {}
odometer_unit = self.pool.get('fleet.vehicle').browse(cr, uid, vehicle_id, context=context).odometer_unit
return {
'value' : {
'unit' : odometer_unit,
}
}
def compute_next_year_date(self, strdate):
nextyear=int(strdate[:4])+1
return str(nextyear)+strdate[4:]

View File

@ -177,7 +177,8 @@
<field name="odometer_unit" class="oe_inline"/>
</div>
<field name="acquisition_date" />
<field name="acquisition_price" />
<field name="car_value" />
<field name="leasing_value" />
</group>
</group>
<group col="2">
@ -356,7 +357,7 @@
<sheet>
<group col="2">
<group string="Insurance details">
<field name="vehicle_id" />
<field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
<field name="insurance_type" />
<field name="start_date" on_change="on_change_start_date(start_date)"/>
<field name="expiration_date" />
@ -365,8 +366,10 @@
</group>
<group col="2">
<group string="Odometer details">
<field name="value" />
<field name="unit" />
<div>
<field name="value" class="oe_inline"/>
<field name="unit" class="oe_inline"/>
</div>
</group>
<group string="Additional details">
<field name="date" />
@ -416,9 +419,11 @@
<form string="Odometer Logs" version="7.0">
<sheet>
<group>
<field name="vehicle_id" />
<field name="value" />
<field name="unit" />
<field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
<div>
<field name="value" class="oe_inline"/>
<field name="unit" class="oe_inline"/>
</div>
<field name="date" />
</group>
</sheet>
@ -431,7 +436,7 @@
<field name="model">fleet.vehicle.odometer</field>
<field name="arch" type="xml">
<tree string="Odometer Logs" version="7.0" editable="bottom">
<field name="vehicle_id" />
<field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
<field name="value" />
<field name="unit" />
<field name="date" />
@ -469,7 +474,7 @@
<sheet>
<group col="2">
<group string="Vehicle Details">
<field name="vehicle_id"/>
<field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
</group>
<group string="Refueling Details">
<field name="liter" on_change="on_change_liter(liter,price_per_liter,amount)"/>
@ -479,8 +484,10 @@
</group>
<group col="2">
<group string="Odometer Details">
<field name="value" />
<field name="unit" />
<div>
<field name="value" class="oe_inline"/>
<field name="unit" class="oe_inline"/>
</div>
</group>
<group string="Additional Details">
<field name="date" />
@ -547,7 +554,7 @@
<sheet>
<group col="2">
<group string="Vehicle Details">
<field name="vehicle_id" />
<field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
</group>
<group string="Services Details">
<field name="service_ids" widget="many2many_tags"/>
@ -556,8 +563,10 @@
</group>
<group col="2">
<group string="Odometer Details">
<field name="value" />
<field name="unit" />
<div>
<field name="value" class="oe_inline"/>
<field name="unit" class="oe_inline"/>
</div>
</group>
<group string="Additional Details">
<field name="date" />