1
# -*- encoding: utf-8 -*-
2
##############################################################################
4
# OpenERP, Open Source Management Solution
5
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>). All Rights Reserved
8
# This program is free software: you can redistribute it and/or modify
9
# it under the terms of the GNU General Public License as published by
10
# the Free Software Foundation, either version 3 of the License, or
11
# (at your option) any later version.
13
# This program is distributed in the hope that it will be useful,
14
# but WITHOUT ANY WARRANTY; without even the implied warranty of
15
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
# GNU General Public License for more details.
18
# You should have received a copy of the GNU General Public License
19
# along with this program. If not, see <http://www.gnu.org/licenses/>.
21
##############################################################################
23
#Bias Product / PriceList
26
from osv import fields
32
map(set.__setitem__, mylist, [])
43
return str(tuple(res))
49
#----------------------------------------------------------
51
#----------------------------------------------------------
54
class aaia_steeringtype(osv.osv):
55
_name = 'aaia.steeringtype'
57
'name': fields.text('Name'),
58
'steeringconfig': fields.one2many('aaia.steeringconfig', 'steeringtypeid', 'steeringconfig'),
59
'steeringtypeid': fields.integer('steeringtypeid'),
60
'steeringtypename': fields.text('steeringtypename'),
64
class aaia_brakeabs(osv.osv):
65
_name = 'aaia.brakeabs'
67
'name': fields.text('Name'),
68
'brakeconfig': fields.one2many('aaia.brakeconfig', 'brakeabsid', 'brakeconfig'),
69
'brakeabsid': fields.integer('brakeabsid'),
70
'brakeabsname': fields.text('brakeabsname'),
74
class aaia_fuelsystemcontroltype(osv.osv):
75
_name = 'aaia.fuelsystemcontroltype'
77
'name': fields.text('Name'),
78
'fueldeliveryconfig': fields.one2many('aaia.fueldeliveryconfig', 'fuelsystemcontroltypeid', 'fueldeliveryconfig'),
79
'fuelsystemcontroltypeid': fields.integer('fuelsystemcontroltypeid'),
80
'fuelsystemcontroltypename': fields.text('fuelsystemcontroltypename'),
82
aaia_fuelsystemcontroltype()
84
class aaia_cylinderheadtype(osv.osv):
85
_name = 'aaia.cylinderheadtype'
87
'name': fields.text('Name'),
88
'engineconfig': fields.one2many('aaia.engineconfig', 'cylinderheadtypeid', 'engineconfig'),
89
'cylinderheadtypeid': fields.integer('cylinderheadtypeid'),
90
'cylinderheadtypename': fields.text('cylinderheadtypename'),
92
aaia_cylinderheadtype()
94
class aaia_bedtype(osv.osv):
95
_name = 'aaia.bedtype'
97
'name': fields.text('Name'),
98
'bedconfig': fields.one2many('aaia.bedconfig', 'bedtypeid', 'bedconfig'),
99
'bedtypeid': fields.integer('bedtypeid'),
100
'bedtypename': fields.text('bedtypename'),
104
class aaia_vehicletype(osv.osv):
105
_name = 'aaia.vehicletype'
107
'name': fields.text('Name'),
108
'model': fields.one2many('aaia.model', 'vehicletypeid', 'model'),
109
'vehicletypeid': fields.integer('vehicletypeid'),
110
'vehicletypename': fields.text('vehicletypename'),
111
'vehicletypegroupid': fields.integer('vehicletypegroupid'),
115
class aaia_brakesystem(osv.osv):
116
_name = 'aaia.brakesystem'
118
'name': fields.text('Name'),
119
'brakeconfig': fields.one2many('aaia.brakeconfig', 'brakesystemid', 'brakeconfig'),
120
'brakesystemid': fields.integer('brakesystemid'),
121
'brakesystemname': fields.text('brakesystemname'),
125
class aaia_year(osv.osv):
126
def _search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False, access_rights_uid=None):
127
typelist = [type(x) for x in args]
128
##### If there is no dict, then it doesn't come from our view
129
if not dict in typelist:
130
return super(aaia_year, self)._search(cr, uid, args, offset=offset, limit=limit, order=order, context=context, count=count, access_rights_uid=access_rights_uid)
131
##### If this call includes a tuple ('id', 'in', [....]), it is only to take care of offset, limit, etc...
132
elif tuple in typelist:
133
return super(aaia_year, self)._search(cr, uid, [args[typelist.index(tuple)]], offset=offset, limit=limit, order=order, context=context, count=count, access_rights_uid=access_rights_uid)
135
##### If not, we show only the engineconfig's which correspond to year, make, model already selected
138
if item['column'] == 'enginebase' and item['values']:
139
myargs = [('enginebaseid', 'in', item['values'])]
142
engineidlist = self.pool.get('aaia.engineconfig').search(cr, uid, myargs)
143
myargs = [('engineconfig', 'in', engineidlist)]
144
idlist = self.pool.get('aaia.vehicle').search(cr, uid, myargs)
145
res = self.pool.get('aaia.vehicle').read(cr, uid, idlist, ['basevehicleid'])
146
myargs = [('basevehicleid', 'in', uniquify([x['basevehicleid'][0] for x in res]))]
150
if item['column'] != 'enginebase':
152
myargs.append((item['column'], 'in', item['values']))
154
idlist = self.pool.get('aaia.basevehicle').search(cr, uid, myargs)
155
res = self.pool.get('aaia.basevehicle').read(cr, uid, idlist, ['yearid'])
156
finalargs = [('yearid', 'in', uniquify([x['yearid'][0] for x in res]))]
159
##### We finally call the super to take care of offset, limit, etc...
160
res = super(aaia_year, self)._search(cr, uid, finalargs, offset, limit, order, context, count, access_rights_uid)
164
def name_get(self, cr, uid, ids, context=None):
165
if type(ids) != list:
167
return [(x, str(x)+"XX") for x in ids]
168
# def _name_get_fnc(self, cr, uid, ids, prop, unknow_none, context):
169
# res = self.name_get(cr, uid, ids, context)
173
'name': fields.char('Name', size=64),
174
# 'complete_name': fields.function(_name_get_fnc, method=True, type="char", string='Name'),
175
'basevehicle': fields.one2many('aaia.basevehicle', 'yearid', 'basevehicle'),
176
'yearid': fields.integer('yearid'),
180
class aaia_drivetype(osv.osv):
181
_name = 'aaia.drivetype'
183
'name': fields.text('Name'),
184
'drivetypeid': fields.integer('drivetypeid'),
185
'drivetypename': fields.text('drivetypename'),
189
class aaia_wheelbase(osv.osv):
190
def name_get(self, cr, uid, ids, context=None):
191
if type(ids) != list:
193
return [(x, 'myname') for x in ids]
194
_name = 'aaia.wheelbase'
196
'name': fields.text('Name'),
197
'wheelbaseid': fields.integer('wheelbaseid'),
198
'wheelbase': fields.text('wheelbase'),
199
'wheelbasemetric': fields.text('wheelbasemetric'),
203
class aaia_transmissiontype(osv.osv):
204
_name = 'aaia.transmissiontype'
206
'name': fields.text('Name'),
207
'transmissionbase': fields.one2many('aaia.transmissionbase', 'transmissiontypeid', 'transmissionbase'),
208
'transmissiontypeid': fields.integer('transmissiontypeid'),
209
'transmissiontypename': fields.text('transmissiontypename'),
211
aaia_transmissiontype()
213
class aaia_springtype(osv.osv):
214
_name = 'aaia.springtype'
216
'name': fields.text('Name'),
217
'springtypeconfig': fields.one2many('aaia.springtypeconfig', 'frontspringtypeid', 'springtypeconfig'),
218
'springtypeconfig': fields.one2many('aaia.springtypeconfig', 'rearspringtypeid', 'springtypeconfig'),
219
'springtypeid': fields.integer('springtypeid'),
220
'springtypename': fields.text('springtypename'),
224
class aaia_ignitionsystemtype(osv.osv):
225
_name = 'aaia.ignitionsystemtype'
227
'name': fields.text('Name'),
228
'engineconfig': fields.one2many('aaia.engineconfig', 'ignitionsystemtypeid', 'engineconfig'),
229
'ignitionsystemtypeid': fields.integer('ignitionsystemtypeid'),
230
'ignitionsystemtypename': fields.text('ignitionsystemtypename'),
232
aaia_ignitionsystemtype()
234
class aaia_bedlength(osv.osv):
235
def name_get(self, cr, uid, ids, context=None):
236
if type(ids) != list:
238
return [(x, 'myname') for x in ids]
239
_name = 'aaia.bedlength'
241
'name': fields.text('Name'),
242
'bedconfig': fields.one2many('aaia.bedconfig', 'bedlengthid', 'bedconfig'),
243
'bedlengthid': fields.integer('bedlengthid'),
244
'bedlength': fields.char('bedlength', size=30),
245
'bedlengthmetric': fields.char('bedlengthmetric', size=30),
249
class aaia_enginevin(osv.osv):
250
_name = 'aaia.enginevin'
252
'name': fields.text('Name'),
253
'engineconfig': fields.one2many('aaia.engineconfig', 'enginevinid', 'engineconfig'),
254
'enginevinid': fields.integer('enginevinid'),
255
'enginevinname': fields.text('enginevinname'),
259
class aaia_make(osv.osv):
260
def _search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False, access_rights_uid=None):
261
typelist = [type(x) for x in args]
262
##### If there is no dict, then it doesn't come from our view
263
if not dict in typelist:
264
return super(aaia_make, self)._search(cr, uid, args, offset=offset, limit=limit, order=order, context=context, count=count, access_rights_uid=access_rights_uid)
265
##### If this call includes a tuple ('id', 'in', [...]), it is only to take care of offset, limit, etc...
266
elif tuple in typelist:
267
return super(aaia_make, self)._search(cr, uid, [args[typelist.index(tuple)]], offset=offset, limit=limit, order=order, context=context, count=count, access_rights_uid=access_rights_uid)
269
##### If not, we show only the engineconfig's which correspond to year, make, model already selected
272
if item['column'] == 'enginebase' and item['values']:
273
myargs = [('enginebaseid', 'in', item['values'])]
276
engineidlist = self.pool.get('aaia.engineconfig').search(cr, uid, myargs)
277
myargs = [('engineconfig', 'in', engineidlist)]
278
idlist = self.pool.get('aaia.vehicle').search(cr, uid, myargs)
279
res = self.pool.get('aaia.vehicle').read(cr, uid, idlist, ['basevehicleid'])
280
myargs = [('basevehicleid', 'in', uniquify([x['basevehicleid'][0] for x in res]))]
284
if item['column'] != 'enginebase':
286
myargs.append((item['column'], 'in', item['values']))
288
idlist = self.pool.get('aaia.basevehicle').search(cr, uid, myargs)
289
res = self.pool.get('aaia.basevehicle').read(cr, uid, idlist, ['makeid'])
290
finalargs = [('makeid', 'in', uniquify([x['makeid'][0] for x in res]))]
293
##### We finally call the super to take care of offset, limit, etc...
294
res = super(aaia_make, self)._search(cr, uid, finalargs, offset, limit, order, context, count, access_rights_uid)
299
'name': fields.text('Name'),
300
'basevehicle': fields.one2many('aaia.basevehicle', 'makeid', 'basevehicle'),
301
'makeid': fields.integer('makeid'),
302
'makename': fields.text('makename'),
306
class aaia_springtypeconfig(osv.osv):
307
def name_get(self, cr, uid, ids, context=None):
308
if type(ids) != list:
310
return [(x, 'myname') for x in ids]
311
_name = 'aaia.springtypeconfig'
313
'name': fields.text('Name'),
314
'springtypeconfigid': fields.integer('springtypeconfigid'),
315
'frontspringtypeid': fields.many2one('aaia.springtype', 'frontspringtypeid'),
316
'rearspringtypeid': fields.many2one('aaia.springtype', 'rearspringtypeid'),
318
aaia_springtypeconfig()
320
class aaia_braketype(osv.osv):
321
_name = 'aaia.braketype'
323
'name': fields.text('Name'),
324
'brakeconfig': fields.one2many('aaia.brakeconfig', 'frontbraketypeid', 'brakeconfig'),
325
'brakeconfig': fields.one2many('aaia.brakeconfig', 'rearbraketypeid', 'brakeconfig'),
326
'braketypeid': fields.integer('braketypeid'),
327
'braketypename': fields.text('braketypename'),
331
class aaia_fueldeliverytype(osv.osv):
332
_name = 'aaia.fueldeliverytype'
334
'name': fields.text('Name'),
335
'fueldeliveryconfig': fields.one2many('aaia.fueldeliveryconfig', 'fueldeliverytypeid', 'fueldeliveryconfig'),
336
'fueldeliverytypeid': fields.integer('fueldeliverytypeid'),
337
'fueldeliverytypename': fields.text('fueldeliverytypename'),
339
aaia_fueldeliverytype()
341
class aaia_fueldeliverysubtype(osv.osv):
342
_name = 'aaia.fueldeliverysubtype'
344
'name': fields.text('Name'),
345
'fueldeliveryconfig': fields.one2many('aaia.fueldeliveryconfig', 'fueldeliverysubtypeid', 'fueldeliveryconfig'),
346
'fueldeliverysubtypeid': fields.integer('fueldeliverysubtypeid'),
347
'fueldeliverysubtypename': fields.text('fueldeliverysubtypename'),
349
aaia_fueldeliverysubtype()
351
class aaia_fuelsystemdesign(osv.osv):
352
_name = 'aaia.fuelsystemdesign'
354
'name': fields.text('Name'),
355
'fueldeliveryconfig': fields.one2many('aaia.fueldeliveryconfig', 'fuelsystemdesignid', 'fueldeliveryconfig'),
356
'fuelsystemdesignid': fields.integer('fuelsystemdesignid'),
357
'fuelsystemdesignname': fields.text('fuelsystemdesignname'),
359
aaia_fuelsystemdesign()
361
class aaia_fueldeliveryconfig(osv.osv):
362
def name_get(self, cr, uid, ids, context=None):
363
if type(ids) != list:
365
return [(x, 'myname') for x in ids]
366
_name = 'aaia.fueldeliveryconfig'
368
'name': fields.text('Name'),
369
'engineconfig': fields.one2many('aaia.engineconfig', 'fueldeliveryconfigid', 'engineconfig'),
370
'fueldeliveryconfigid': fields.integer('fueldeliveryconfigid'),
371
'fueldeliverytypeid': fields.many2one('aaia.fueldeliverytype', 'fueldeliverytypeid'),
372
'fueldeliverysubtypeid': fields.many2one('aaia.fueldeliverysubtype', 'fueldeliverysubtypeid'),
373
'fuelsystemcontroltypeid': fields.many2one('aaia.fuelsystemcontroltype', 'fuelsystemcontroltypeid'),
374
'fuelsystemdesignid': fields.many2one('aaia.fuelsystemdesign', 'fuelsystemdesignid'),
376
aaia_fueldeliveryconfig()
378
class aaia_bedconfig(osv.osv):
379
def name_get(self, cr, uid, ids, context=None):
380
if type(ids) != list:
382
return [(x, 'myname') for x in ids]
383
_name = 'aaia.bedconfig'
385
'name': fields.text('Name'),
386
'bedconfigid': fields.integer('bedconfigid'),
387
'bedlengthid': fields.many2one('aaia.bedlength', 'bedlengthid'),
388
'bedtypeid': fields.many2one('aaia.bedtype', 'bedtypeid'),
392
class aaia_model(osv.osv):
393
def _search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False, access_rights_uid=None):
394
typelist = [type(x) for x in args]
395
##### If there is no dict, then it doesn't come from our view
396
if not dict in typelist:
397
return super(aaia_model, self)._search(cr, uid, args, offset=offset, limit=limit, order=order, context=context, count=count, access_rights_uid=access_rights_uid)
398
##### If this call includes a tuple ('id', 'in', [....]), it is only to take care of offset, limit, etc...
399
elif tuple in typelist:
400
return super(aaia_model, self)._search(cr, uid, [args[typelist.index(tuple)]], offset=offset, limit=limit, order=order, context=context, count=count, access_rights_uid=access_rights_uid)
402
##### If not, we show only the engineconfig's which correspond to year, make, model already selected
405
if item['column'] == 'enginebase' and item['values']:
406
myargs = [('enginebaseid', 'in', item['values'])]
409
engineidlist = self.pool.get('aaia.engineconfig').search(cr, uid, myargs)
410
myargs = [('engineconfig', 'in', engineidlist)]
411
idlist = self.pool.get('aaia.vehicle').search(cr, uid, myargs)
412
res = self.pool.get('aaia.vehicle').read(cr, uid, idlist, ['basevehicleid'])
413
myargs = [('basevehicleid', 'in', uniquify([x['basevehicleid'][0] for x in res]))]
417
if item['column'] != 'enginebase':
419
myargs.append((item['column'], 'in', item['values']))
421
idlist = self.pool.get('aaia.basevehicle').search(cr, uid, myargs)
422
res = self.pool.get('aaia.basevehicle').read(cr, uid, idlist, ['modelid'])
423
finalargs = [('modelid', 'in', uniquify([x['modelid'][0] for x in res]))]
426
##### We finally call the super to take care of offset, limit, etc...
427
res = super(aaia_model, self)._search(cr, uid, finalargs, offset, limit, order, context, count, access_rights_uid)
432
'name': fields.text('Name'),
433
'basevehicle': fields.one2many('aaia.basevehicle', 'modelid', 'basevehicle'),
434
'modelid': fields.integer('modelid'),
435
'modelname': fields.text('modelname'),
436
'vehicletypeid': fields.many2one('aaia.vehicletype', 'vehicletypeid'),
440
class aaia_basevehicle(osv.osv):
441
def name_get(self, cr, uid, ids, context=None):
442
if type(ids) != list:
444
return [(x, 'myname') for x in ids]
445
_name = 'aaia.basevehicle'
447
'name': fields.text('Name'),
448
'vehicle': fields.one2many('aaia.vehicle', 'basevehicleid', 'vehicle'),
449
'basevehicleid': fields.integer('basevehicleid'),
450
'yearid': fields.many2one('aaia.year', 'yearid'),
451
'makeid': fields.many2one('aaia.make', 'makeid'),
452
'modelid': fields.many2one('aaia.model', 'modelid'),
456
class aaia_submodel(osv.osv):
457
_name = 'aaia.submodel'
459
'name': fields.text('Name'),
460
'vehicle': fields.one2many('aaia.vehicle', 'submodelid', 'vehicle'),
461
'submodelid': fields.integer('submodelid'),
462
'submodelname': fields.text('submodelname'),
466
class aaia_region(osv.osv):
467
_name = 'aaia.region'
469
'name': fields.text('Name'),
470
'vehicle': fields.one2many('aaia.vehicle', 'regionid', 'vehicle'),
471
'regionid': fields.integer('regionid'),
472
'parentid': fields.integer('parentid'),
473
'regionabbr': fields.char('regionabbr', size=30),
474
'regionname': fields.text('regionname'),
478
class aaia_bodynumdoors(osv.osv):
479
def name_get(self, cr, uid, ids, context=None):
480
if type(ids) != list:
482
return [(x, 'myname') for x in ids]
483
_name = 'aaia.bodynumdoors'
485
'name': fields.text('Name'),
486
'bodystyleconfig': fields.one2many('aaia.bodystyleconfig', 'bodynumdoorsid', 'bodystyleconfig'),
487
'bodynumdoorsid': fields.integer('bodynumdoorsid'),
488
'bodynumdoors': fields.char('bodynumdoors', size=30),
492
class aaia_bodytype(osv.osv):
493
_name = 'aaia.bodytype'
495
'name': fields.text('Name'),
496
'bodystyleconfig': fields.one2many('aaia.bodystyleconfig', 'bodytypeid', 'bodystyleconfig'),
497
'bodytypeid': fields.integer('bodytypeid'),
498
'bodytypename': fields.text('bodytypename'),
502
class aaia_bodystyleconfig(osv.osv):
503
def name_get(self, cr, uid, ids, context=None):
504
if type(ids) != list:
506
return [(x, 'myname') for x in ids]
507
_name = 'aaia.bodystyleconfig'
509
'name': fields.text('Name'),
510
'bodystyleconfigid': fields.integer('bodystyleconfigid'),
511
'bodynumdoorsid': fields.many2one('aaia.bodynumdoors', 'bodynumdoorsid'),
512
'bodytypeid': fields.many2one('aaia.bodytype', 'bodytypeid'),
514
aaia_bodystyleconfig()
516
class aaia_brakeconfig(osv.osv):
517
def name_get(self, cr, uid, ids, context=None):
518
if type(ids) != list:
520
return [(x, 'myname') for x in ids]
521
_name = 'aaia.brakeconfig'
523
'name': fields.text('Name'),
524
'brakeconfigid': fields.integer('brakeconfigid'),
525
'brakesystemid': fields.many2one('aaia.brakesystem', 'brakesystemid'),
526
'brakeabsid': fields.many2one('aaia.brakeabs', 'brakeabsid'),
527
'frontbraketypeid': fields.many2one('aaia.braketype', 'frontbraketypeid'),
528
'rearbraketypeid': fields.many2one('aaia.braketype', 'rearbraketypeid'),
532
class aaia_enginedesignation(osv.osv):
533
_name = 'aaia.enginedesignation'
535
'name': fields.text('Name'),
536
'engineconfig': fields.one2many('aaia.engineconfig', 'enginedesignationid', 'engineconfig'),
537
'enginedesignationid': fields.integer('enginedesignationid'),
538
'enginedesignationname': fields.text('enginedesignationname'),
540
aaia_enginedesignation()
542
class aaia_enginebase(osv.osv):
543
##### _search will be called twice: once from the view where args include only dictionaries (from the view)
544
##### and once from the "super..." invoked from the first call
545
def _search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False, access_rights_uid=None):
546
typelist = [type(x) for x in args]
547
##### If there is no dict, then it doesn't come from our view
548
if not dict in typelist:
549
return super(aaia_enginebase, self)._search(cr, uid, args, offset=offset, limit=limit, order=order, context=context, count=count, access_rights_uid=access_rights_uid)
550
##### If this call includes a tuple ('id', 'in', [....]), it is only to take care of offset, limit, etc...
551
elif tuple in typelist:
552
return super(aaia_enginebase, self)._search(cr, uid, [args[typelist.index(tuple)]], offset=offset, limit=limit, order=order, context=context, count=count, access_rights_uid=access_rights_uid)
554
##### If not, we show only the engineconfig's which correspond to year, make, model already selected
558
myargs.append((item['column'], 'in', item['values']))
560
idlist = self.pool.get('aaia.basevehicle').search(cr, uid, myargs)
561
idlist = self.pool.get('aaia.vehicle').search(cr, uid, [('basevehicleid', 'in', idlist)])
562
res = self.pool.get('aaia.vehicle').read(cr, uid, idlist, ['engineconfig'])
565
finalidlist += item['engineconfig']
566
finalargs = [('engineconfig', 'in', uniquify(finalidlist))]
569
##### We finally call the super to take care of offset, limit, etc...
570
res = super(aaia_enginebase, self)._search(cr, uid, finalargs, offset, limit, order, context, count, access_rights_uid)
574
def name_get(self, cr, uid, ids, context=None):
575
if type(ids) != list:
577
return [(x, 'myname') for x in ids]
578
_name = 'aaia.enginebase'
580
'name': fields.text('Name'),
581
'engineconfig': fields.one2many('aaia.engineconfig', 'enginebaseid', 'engineconfig'),
582
'enginebaseid': fields.integer('enginebaseid'),
583
'liter': fields.char('liter', size=30),
584
'cc': fields.char('cc', size=30),
585
'cid': fields.char('cid', size=30),
586
'cylinders': fields.char('cylinders', size=30),
587
'blocktype': fields.char('blocktype', size=30),
588
'engborein': fields.char('engborein', size=30),
589
'engboremetric': fields.char('engboremetric', size=30),
590
'engstrokein': fields.char('engstrokein', size=30),
591
'engstrokemetric': fields.char('engstrokemetric', size=30),
595
class aaia_aspiration(osv.osv):
596
_name = 'aaia.aspiration'
598
'name': fields.text('Name'),
599
'engineconfig': fields.one2many('aaia.engineconfig', 'aspirationid', 'engineconfig'),
600
'aspirationid': fields.integer('aspirationid'),
601
'aspirationname': fields.text('aspirationname'),
605
class aaia_fueltype(osv.osv):
606
_name = 'aaia.fueltype'
608
'name': fields.text('Name'),
609
'engineconfig': fields.one2many('aaia.engineconfig', 'fueltypeid', 'engineconfig'),
610
'fueltypeid': fields.integer('fueltypeid'),
611
'fueltypename': fields.text('fueltypename'),
615
class aaia_mfr(osv.osv):
618
'name': fields.text('Name'),
619
'engineconfig': fields.one2many('aaia.engineconfig', 'enginemfrid', 'engineconfig'),
620
'transmission': fields.one2many('aaia.transmission', 'transmissionmfrid', 'transmission'),
621
'mfrid': fields.integer('mfrid'),
622
'mfrname': fields.text('mfrname'),
626
class aaia_engineversion(osv.osv):
627
def name_get(self, cr, uid, ids, context=None):
628
if type(ids) != list:
630
return [(x, 'myname') for x in ids]
631
_name = 'aaia.engineversion'
633
'name': fields.text('Name'),
634
'engineconfig': fields.one2many('aaia.engineconfig', 'engineversionid', 'engineconfig'),
635
'engineversionid': fields.integer('engineversionid'),
636
'engineversion': fields.text('engineversion'),
640
class aaia_engineconfig(osv.osv):
641
def name_get(self, cr, uid, ids, context=None):
642
if type(ids) != list:
644
return [(x, 'myname') for x in ids]
645
_name = 'aaia.engineconfig'
647
'name': fields.text('Name'),
648
'engineconfigid': fields.integer('engineconfigid'),
649
'enginedesignationid': fields.many2one('aaia.enginedesignation', 'enginedesignationid'),
650
'enginevinid': fields.many2one('aaia.enginevin', 'enginevinid'),
651
'enginebaseid': fields.many2one('aaia.enginebase', 'enginebaseid'),
652
'fueldeliveryconfigid': fields.many2one('aaia.fueldeliveryconfig', 'fueldeliveryconfigid'),
653
'aspirationid': fields.many2one('aaia.aspiration', 'aspirationid'),
654
'cylinderheadtypeid': fields.many2one('aaia.cylinderheadtype', 'cylinderheadtypeid'),
655
'fueltypeid': fields.many2one('aaia.fueltype', 'fueltypeid'),
656
'ignitionsystemtypeid': fields.many2one('aaia.ignitionsystemtype', 'ignitionsystemtypeid'),
657
'enginemfrid': fields.many2one('aaia.mfr', 'enginemfrid'),
658
'engineversionid': fields.many2one('aaia.engineversion', 'engineversionid'),
659
'valvesid': fields.integer('valvesid'),
660
'poweroutputid': fields.integer('poweroutputid'),
664
class aaia_mfrbodycode(osv.osv):
665
_name = 'aaia.mfrbodycode'
667
'name': fields.text('Name'),
668
'mfrbodycodeid': fields.integer('mfrbodycodeid'),
669
'mfrbodycodename': fields.text('mfrbodycodename'),
673
class aaia_steeringsystem(osv.osv):
674
_name = 'aaia.steeringsystem'
676
'name': fields.text('Name'),
677
'steeringconfig': fields.one2many('aaia.steeringconfig', 'steeringsystemid', 'steeringconfig'),
678
'steeringsystemid': fields.integer('steeringsystemid'),
679
'steeringsystemname': fields.text('steeringsystemname'),
681
aaia_steeringsystem()
683
class aaia_steeringconfig(osv.osv):
684
def name_get(self, cr, uid, ids, context=None):
685
if type(ids) != list:
687
return [(x, 'myname') for x in ids]
688
_name = 'aaia.steeringconfig'
690
'name': fields.text('Name'),
691
'steeringconfigid': fields.integer('steeringconfigid'),
692
'steeringtypeid': fields.many2one('aaia.steeringtype', 'steeringtypeid'),
693
'steeringsystemid': fields.many2one('aaia.steeringsystem', 'steeringsystemid'),
695
aaia_steeringconfig()
697
class aaia_transmissionnumspeeds(osv.osv):
698
def name_get(self, cr, uid, ids, context=None):
699
if type(ids) != list:
701
return [(x, 'myname') for x in ids]
702
_name = 'aaia.transmissionnumspeeds'
704
'name': fields.text('Name'),
705
'transmissionbase': fields.one2many('aaia.transmissionbase', 'transmissionnumspeedsid', 'transmissionbase'),
706
'transmissionnumspeedsid': fields.integer('transmissionnumspeedsid'),
707
'transmissionnumspeeds': fields.char('transmissionnumspeeds', size=30),
709
aaia_transmissionnumspeeds()
711
class aaia_transmissioncontroltype(osv.osv):
712
_name = 'aaia.transmissioncontroltype'
714
'name': fields.text('Name'),
715
'transmissionbase': fields.one2many('aaia.transmissionbase', 'transmissioncontroltypeid', 'transmissionbase'),
716
'transmissioncontroltypeid': fields.integer('transmissioncontroltypeid'),
717
'transmissioncontroltypename': fields.text('transmissioncontroltypename'),
719
aaia_transmissioncontroltype()
721
class aaia_transmissionbase(osv.osv):
722
def name_get(self, cr, uid, ids, context=None):
723
if type(ids) != list:
725
return [(x, 'myname') for x in ids]
726
_name = 'aaia.transmissionbase'
728
'name': fields.text('Name'),
729
'transmission': fields.one2many('aaia.transmission', 'transmissionbaseid', 'transmission'),
730
'transmissionbaseid': fields.integer('transmissionbaseid'),
731
'transmissiontypeid': fields.many2one('aaia.transmissiontype', 'transmissiontypeid'),
732
'transmissionnumspeedsid': fields.many2one('aaia.transmissionnumspeeds', 'transmissionnumspeedsid'),
733
'transmissioncontroltypeid': fields.many2one('aaia.transmissioncontroltype', 'transmissioncontroltypeid'),
735
aaia_transmissionbase()
737
class aaia_transmissionmfrcode(osv.osv):
738
def name_get(self, cr, uid, ids, context=None):
739
if type(ids) != list:
741
return [(x, 'myname') for x in ids]
742
_name = 'aaia.transmissionmfrcode'
744
'name': fields.text('Name'),
745
'transmission': fields.one2many('aaia.transmission', 'transmissionmfrcodeid', 'transmission'),
746
'transmissionmfrcodeid': fields.integer('transmissionmfrcodeid'),
747
'transmissionmfrcode': fields.text('transmissionmfrcode'),
749
aaia_transmissionmfrcode()
751
class aaia_transmission(osv.osv):
752
def name_get(self, cr, uid, ids, context=None):
753
if type(ids) != list:
755
return [(x, 'myname') for x in ids]
756
_name = 'aaia.transmission'
758
'name': fields.text('Name'),
759
'transmissionid': fields.integer('transmissionid'),
760
'transmissionbaseid': fields.many2one('aaia.transmissionbase', 'transmissionbaseid'),
761
'transmissionmfrcodeid': fields.many2one('aaia.transmissionmfrcode', 'transmissionmfrcodeid'),
762
'transmissionmfrid': fields.many2one('aaia.mfr', 'transmissionmfrid'),
763
'transmissioneleccontrolledid': fields.integer('transmissioneleccontrolledid'),
767
class aaia_vehicle(osv.osv):
768
def name_get(self, cr, uid, ids, context=None):
769
if type(ids) != list:
771
return [(x, 'myname') for x in ids]
772
_name = 'aaia.vehicle'
774
'name': fields.text('Name'),
775
'vehicleid': fields.integer('vehicleid'),
776
'basevehicleid': fields.many2one('aaia.basevehicle', 'basevehicleid'),
777
'submodelid': fields.many2one('aaia.submodel', 'submodelid'),
778
'source': fields.text('source'),
779
'regionid': fields.many2one('aaia.region', 'regionid'),
780
'bedconfig': fields.many2many('aaia.bedconfig', 'vehicletobedconfig', 'vehicleid', 'bedconfigid', 'bedconfig'),
781
'bodystyleconfig': fields.many2many('aaia.bodystyleconfig', 'vehicletobodystyleconfig', 'vehicleid', 'bodystyleconfigid', 'bodystyleconfig'),
782
'brakeconfig': fields.many2many('aaia.brakeconfig', 'vehicletobrakeconfig', 'vehicleid', 'brakeconfigid', 'brakeconfig'),
783
'drivetype': fields.many2many('aaia.drivetype', 'vehicletodrivetype', 'vehicleid', 'drivetypeid', 'drivetype'),
784
'engineconfig': fields.many2many('aaia.engineconfig', 'vehicletoengineconfig', 'vehicleid', 'engineconfigid', 'engineconfig'),
785
'mfrbodycode': fields.many2many('aaia.mfrbodycode', 'vehicletomfrbodycode', 'vehicleid', 'mfrbodycodeid', 'mfrbodycode'),
786
'springtypeconfig': fields.many2many('aaia.springtypeconfig', 'vehicletospringtypeconfig', 'vehicleid', 'springtypeconfigid', 'springtypeconfig'),
787
'steeringconfig': fields.many2many('aaia.steeringconfig', 'vehicletosteeringconfig', 'vehicleid', 'steeringconfigid', 'steeringconfig'),
788
'transmission': fields.many2many('aaia.transmission', 'vehicletotransmission', 'vehicleid', 'transmissionid', 'transmission'),
789
'wheelbase': fields.many2many('aaia.wheelbase', 'vehicletowheelbase', 'vehicleid', 'wheelbaseid', 'wheelbase'),