From 953da82e74793cd349a0c869e99225a0d0fb25ae Mon Sep 17 00:00:00 2001 From: Cedric Snauwaert Date: Fri, 5 Oct 2012 12:09:20 +0200 Subject: [PATCH] [ADD]change image in install menu bzr revid: csn@openerp.com-20121005100920-yl3sss1zsvevvaso --- addons/fleet/__openerp__.py | 2 + addons/fleet/fleet.py | 58 ++++++++++++++++++--------- addons/fleet/fleet_view.xml | 11 ++--- addons/fleet/static/src/img/icon.png | Bin 20448 -> 10373 bytes 4 files changed, 45 insertions(+), 26 deletions(-) diff --git a/addons/fleet/__openerp__.py b/addons/fleet/__openerp__.py index a95d2613c64..8eceaf3fe12 100644 --- a/addons/fleet/__openerp__.py +++ b/addons/fleet/__openerp__.py @@ -27,7 +27,9 @@ Add insurance and services reminder that will help you by sending you a mail whe 'data.xml', ], 'update_xml' : ['security/ir.model.access.csv'], + 'demo': ['cars.xml','demo.xml'], + 'installable' : True, 'application' : True, } \ No newline at end of file diff --git a/addons/fleet/fleet.py b/addons/fleet/fleet.py index d9b40804ed4..b02c05a7c78 100644 --- a/addons/fleet/fleet.py +++ b/addons/fleet/fleet.py @@ -40,15 +40,23 @@ class fleet_vehicle_cost(osv.Model): _columns = { 'name' : fields.function(_cost_name_get_fnc, type="char", string='Name', store=True), - + #'name' : fields.char('Name',size=32), 'vehicle_id': fields.many2one('fleet.vehicle', 'Vehicle', required=True, help='Vehicle concerned by this fuel log'), 'cost_type': fields.many2one('fleet.service.type', 'Service type', required=False, help='Service type purchased with this cost'), 'amount': fields.float('Total Price'), + 'parent_id': fields.many2one('fleet.vehicle.cost', 'Parent', required=False, help='Parent cost to this current cost'), 'cost_ids' : fields.one2many('fleet.vehicle.cost', 'parent_id', 'Included Services'), + 'date' :fields.date('Cost Date',help='Date when the cost has been executed'), } + _default ={ + 'parent_id':None, + } + + + def create(self, cr, uid, data, context=None): if 'parent_id' in data and data['parent_id']: data['vehicle_id'] = self.browse(cr, uid, data['parent_id'], context=context).vehicle_id.id @@ -322,20 +330,6 @@ class fleet_vehicle(osv.Model): res.append((record.id,0)) return dict(res) - def get_next_service_reminder(self,cr,uid,ids,prop,unknow_none,context=None): - if context is None: - context={} - if not ids: - return dict([]) - reads = self.browse(cr,uid,ids,context=context) - res=[] - for record in reads: - services = self.pool.get('fleet.vehicle.log.services').search(cr,uid,[('vehicle_id','=',record.id)],order='date') - if (len(services) > 0): - res.append((record.id,self.pool.get('fleet.vehicle.log.services').browse(cr,uid,services[0],context=context).date)) - else: - res.append((record.id,None)) - return dict(res) _name = 'fleet.vehicle' _description = 'Fleet Vehicle' @@ -376,8 +370,7 @@ class fleet_vehicle(osv.Model): 'contract_renewal_due_soon' : fields.function(get_next_contract_reminder,type="integer",string='Contract Renewal Due Soon',store=False), 'contract_renewal_overdue' : fields.function(get_overdue_contract_reminder,type="integer",string='Contract Renewal Overdue',store=False), - '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'), } @@ -387,7 +380,13 @@ class fleet_vehicle(osv.Model): 'odometer_unit' : 'kilometers', } - + def copy(self, cr, uid, id, default=None, context=None): + if not default: + default = {} + #default.update({ + # 'name': self.pool.get('ir.sequence').get(cr, uid, 'stock.orderpoint') or '', + #}) + return super(fleet_vehicle, self).copy(cr, uid, id, default, context=context) def on_change_model(self, cr, uid, ids, model_id, context=None): @@ -825,6 +824,29 @@ class fleet_vehicle_log_contract(osv.Model): } + def copy(self, cr, uid, id, default=None, context=None): + default = default or {} + current_object = self.browse(cr,uid,id,context) + default['start_date'] = time.strftime('%Y-%m-%d') + default['expiration_date'] = self.compute_next_year_date(time.strftime('%Y-%m-%d')) + #default['name'] = current_object.name + default['insurer_id']= current_object.insurer_id + default['purchaser_id'] = current_object.purchaser_id + default['ins_ref'] = '' + default['state'] = 'open' + default['notes'] = '' + default['costs'] = current_object.costs + default['odometer_id'] = current_object.odometer_id + default['vehicle_id'] = current_object.vehicle_id + default['cost_type'] = current_object.cost_type + default['amount'] = current_object.amount + default['parent_id'] = current_object.parent_id + default['date'] = time.strftime('%Y-%m-%d') + + #default['odometer'] = current_object.odometer + #default['odometer_unit'] = current_object.odometer_unit + return super(fleet_vehicle_log_contract, self).copy(cr, uid, id, default, context=context) + def contract_close(self, cr, uid, ids, *args): self.write(cr, uid, ids, {'state': 'closed'}) return True diff --git a/addons/fleet/fleet_view.xml b/addons/fleet/fleet_view.xml index 8e770ffe2c6..fb2074d3fcc 100644 --- a/addons/fleet/fleet_view.xml +++ b/addons/fleet/fleet_view.xml @@ -242,7 +242,6 @@ - @@ -291,13 +290,13 @@ - + Contract Renewal - + Contract Renewal @@ -316,7 +315,6 @@ - @@ -603,8 +601,8 @@ - + @@ -802,9 +800,6 @@ - - - diff --git a/addons/fleet/static/src/img/icon.png b/addons/fleet/static/src/img/icon.png index 8600d565da54d27a7e01690aca37113b6203d2a1..4855fa31590c8631e0fe4bd9a6b39923c2db0162 100644 GIT binary patch literal 10373 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 b^}7ET(hk%2fpqe100000NkvXXu0mjfr$i~8