From 3637d57127dd4cbdefd3f11d86d742f8a5c8fecb Mon Sep 17 00:00:00 2001 From: "Denis Ledoux dle@openerp.com" <> Date: Wed, 19 Sep 2012 18:13:27 +0200 Subject: [PATCH] [ADD]Stephane classes and views bzr revid: dle@openerp.com-20120919161327-u72nqktzmowzdjg9 --- addons/hr_car/__init__.py | 2 + addons/hr_car/__openerp__.py | 18 ++++ addons/hr_car/hr_car.py | 76 +++++++++++++++++ addons/hr_car/hr_car_view.xml | 154 ++++++++++++++++++++++++++++++++++ 4 files changed, 250 insertions(+) create mode 100644 addons/hr_car/__init__.py create mode 100644 addons/hr_car/__openerp__.py create mode 100644 addons/hr_car/hr_car.py create mode 100644 addons/hr_car/hr_car_view.xml diff --git a/addons/hr_car/__init__.py b/addons/hr_car/__init__.py new file mode 100644 index 00000000000..ec344119076 --- /dev/null +++ b/addons/hr_car/__init__.py @@ -0,0 +1,2 @@ +# import the hr_car code +import hr_car \ No newline at end of file diff --git a/addons/hr_car/__openerp__.py b/addons/hr_car/__openerp__.py new file mode 100644 index 00000000000..f24d0efc758 --- /dev/null +++ b/addons/hr_car/__openerp__.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +{ + 'name' : 'Car Management', + 'version' : '0.1', + 'depends' : [ + 'base', + 'hr', + ], + 'author' : 'OpenERP S.A.', + 'description' : """ + I'm a good module and I will handle the cars of your company ! + """, + 'installable' : True, + 'application' : True, + 'data' : [ + 'hr_car_view.xml', + ] +} \ No newline at end of file diff --git a/addons/hr_car/hr_car.py b/addons/hr_car/hr_car.py new file mode 100644 index 00000000000..74dcb123af1 --- /dev/null +++ b/addons/hr_car/hr_car.py @@ -0,0 +1,76 @@ +from osv import osv, fields + +class fleet_vehicle_model(osv.Model): + _name = 'fleet.vehicle.model' + _description = '...' + + _columns = { + 'name' : fields.char('Name', size=32, required=True), + } + +class fleet_vehicle(osv.Model): + _name = 'fleet.vehicle' + _description = 'Fleet Vehicle' + + _columns = { + 'name' : fields.char('Name', size=32, required=True), + 'model_id' : fields.many2one('fleet.vehicle.model', 'Model', required=True), + 'log_ids' : fields.one2many('fleet.vehicle.log', 'vehicle_id', 'Logs'), + + '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'), + } \ No newline at end of file diff --git a/addons/hr_car/hr_car_view.xml b/addons/hr_car/hr_car_view.xml new file mode 100644 index 00000000000..eff345d7b90 --- /dev/null +++ b/addons/hr_car/hr_car_view.xml @@ -0,0 +1,154 @@ + + + + + fleet.vehicle.model.form + fleet.vehicle.model + +
+ + +
+
+ + fleet.vehicle.model.tree + fleet.vehicle.model + + + + + + + + + Vehicle Model + fleet.vehicle.model + form + tree,form + + + + + + + + fleet.vehicle.form + fleet.vehicle + +
+ + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + fleet.vehicle.tree + fleet.vehicle + + + + + + + + + + Vehicles + fleet.vehicle + form + tree,form + + + + + + + fleet.vehicle.log.form + fleet.vehicle.log + +
+ + + + + + + + + +
+
+
+ + + fleet.vehicle.log.tree + fleet.vehicle.log + + + + + + + + + + + + + Vehicle Logs + fleet.vehicle.log + form + tree,form + + + + + + + fleet.hr.employee.form + hr.employee + form + + + + + + + + + + + + + +
+