2012-09-19 16:13:27 +00:00
|
|
|
from osv import osv, fields
|
|
|
|
|
2012-09-20 13:07:14 +00:00
|
|
|
class fleet_vehicle_model(osv.Model):
|
|
|
|
_name = 'fleet.vehicle.type'
|
|
|
|
_description = 'Type of the vehicle'
|
|
|
|
_columns = {
|
|
|
|
'name' : fields.char('Name', size=32, required=True),
|
|
|
|
}
|
|
|
|
|
2012-09-19 16:13:27 +00:00
|
|
|
class fleet_vehicle_model(osv.Model):
|
|
|
|
_name = 'fleet.vehicle.model'
|
2012-09-20 13:11:32 +00:00
|
|
|
_description = ''
|
2012-09-19 16:13:27 +00:00
|
|
|
|
|
|
|
_columns = {
|
2012-09-20 13:18:04 +00:00
|
|
|
'brand' : fields.many2one('fleet.vehicle.model.brand', 'Model brand', required=True),
|
2012-09-20 13:07:14 +00:00
|
|
|
'type' : fields.many2one('fleet.vehicle.type', 'Vehicle Type', required=True),
|
2012-09-20 13:18:04 +00:00
|
|
|
'name' : fields.many2one('fleet.vehicle.model.name', 'Model name', required=True),
|
|
|
|
'make' : fields.many2one('fleet.vehicle.model.make', 'Model make', required=True),
|
2012-09-20 12:56:21 +00:00
|
|
|
'partner_id': fields.many2many('res.partner','fleet_vehicle_model_vendors','model_id', 'partner_id',string='Vendors',required=False),
|
2012-09-19 16:13:27 +00:00
|
|
|
}
|
|
|
|
|
2012-09-20 13:11:32 +00:00
|
|
|
class fleet_vehicle_model_brand(osv.Model):
|
|
|
|
_name = 'fleet.vehicle.model.brand'
|
|
|
|
_description = 'Brand model of the vehicle'
|
|
|
|
_columns = {
|
|
|
|
'name' : fields.char('Brand Name',size=32, required=True),
|
|
|
|
}
|
|
|
|
|
2012-09-20 13:18:04 +00:00
|
|
|
class fleet_vehicle_model_name(osv.Model):
|
|
|
|
_name = 'fleet.vehicle.model.name'
|
|
|
|
_description = 'Name model of the vehicle'
|
|
|
|
_columns = {
|
|
|
|
'name' : fields.char('Name',size=32, required=True),
|
|
|
|
}
|
|
|
|
|
|
|
|
class fleet_vehicle_model_make(osv.Model):
|
|
|
|
_name = 'fleet.vehicle.model.make'
|
|
|
|
_description = 'Make model of the vehicle'
|
|
|
|
_columns = {
|
|
|
|
'name' : fields.char('Make',size=32, required=True),
|
|
|
|
}
|
|
|
|
|
2012-09-19 16:13:27 +00:00
|
|
|
class fleet_vehicle(osv.Model):
|
|
|
|
_name = 'fleet.vehicle'
|
|
|
|
_description = 'Fleet Vehicle'
|
|
|
|
|
|
|
|
_columns = {
|
2012-09-20 13:48:53 +00:00
|
|
|
'registration' : fields.char('Registration', size=32, required=False),
|
|
|
|
'vin_sn' : fields.char('VIN SN', size=32, required=False),
|
2012-09-20 11:57:55 +00:00
|
|
|
'driver' : fields.many2one('fleet.vehicle', 'employee_id', required=False),
|
2012-09-19 16:13:27 +00:00
|
|
|
'model_id' : fields.many2one('fleet.vehicle.model', 'Model', required=True),
|
|
|
|
'log_ids' : fields.one2many('fleet.vehicle.log', 'vehicle_id', 'Logs'),
|
2012-09-20 13:48:53 +00:00
|
|
|
'acquisition_date' : fields.date('Acquisition date', required=False),
|
|
|
|
'acquisition_price' : fields.integer('Price'),
|
|
|
|
'color' : fields.char('Color',size=32),
|
|
|
|
'status' : fields.char('Status',size=32),
|
|
|
|
'location' : fields.char('Location',size=32),
|
2012-09-19 16:13:27 +00:00
|
|
|
|
|
|
|
'next_repair_km' : fields.integer('Next Repair Km'),
|
|
|
|
'message' : fields.char('Message', size=128, readonly=True),
|
|
|
|
}
|
|
|
|
|
|
|
|
def on_change_model(self, cr, uid, ids, model_id, context=None):
|
|
|
|
# print "ids: %r" % (ids,)
|
|
|
|
# print "model_id: %r" % (model_id,)
|
|
|
|
# print "context: %r" % (context,)
|
|
|
|
# import logging
|
|
|
|
# logger = logging.getLogger('fleet.vehicle')
|
|
|
|
# logger.info('Hello')
|
|
|
|
|
|
|
|
# import ipdb
|
|
|
|
# ipdb.set_trace()
|
|
|
|
|
|
|
|
if not model_id:
|
|
|
|
return {}
|
|
|
|
|
|
|
|
model = self.pool.get('fleet.vehicle.model').browse(cr, uid, model_id, context=context)
|
|
|
|
|
|
|
|
print "model: %r" % (model.name,)
|
|
|
|
|
|
|
|
return {
|
|
|
|
'value' : {
|
|
|
|
'message' : "You have selected this %s model" % (model.name,),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class fleet_vehicle_log_type(osv.Model):
|
|
|
|
_name = 'fleet.vehicle.log.type'
|
|
|
|
|
|
|
|
_columns = {
|
|
|
|
'name' : fields.char('Name', size=32, required=True),
|
|
|
|
}
|
|
|
|
|
|
|
|
class fleet_vehicle_log(osv.Model):
|
|
|
|
_name = 'fleet.vehicle.log'
|
|
|
|
|
|
|
|
_columns = {
|
|
|
|
'employee_id' : fields.many2one('hr.employee', 'Employee', required=True),
|
|
|
|
'vehicle_id' : fields.many2one('fleet.vehicle', 'Vehicle', required=True),
|
|
|
|
|
|
|
|
'create_date' : fields.datetime('Creation Date', readonly=True),
|
|
|
|
|
|
|
|
'description' : fields.text('Description'),
|
|
|
|
'type' : fields.many2one('fleet.vehicle.log.type', 'Type', required=True),
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
class hr_employee(osv.Model):
|
|
|
|
_inherit = 'hr.employee'
|
|
|
|
|
|
|
|
_columns = {
|
|
|
|
'vehicle_id' : fields.many2one('fleet.vehicle', 'Vehicle', required=True),
|
|
|
|
'log_ids' : fields.one2many('fleet.vehicle.log', 'employee_id', 'Logs'),
|
|
|
|
}
|