car_services.py 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. # -*- encoding: utf-8 -*-
  2. from openerp import models, fields, api
  3. class CarService(models.Model):
  4. _name = 'car.service'
  5. name=fields.Char('Modelo y Número de chapa', required=True)
  6. logo = fields.Binary('Logo File')
  7. # license_plate = fields.Char('Numero de chapa', required=True)
  8. partner_id = fields.Many2one(
  9. 'res.partner',
  10. string='Cliente',
  11. ondelete='restrict'
  12. )
  13. description = fields.Text('Description', translate=True)
  14. policy = fields.Boolean()
  15. agent_id = fields.Many2one(
  16. 'res.partner',
  17. string='Agente',
  18. ondelete='restrict'
  19. )
  20. secure_id = fields.Many2one(
  21. 'res.partner',
  22. string='Aseguradora',
  23. ondelete='restrict'
  24. )
  25. odometer = fields.Float('Odometro')
  26. car_value = fields.Float('Valor del vehiculo')
  27. transmission = fields.Selection([('manual','Manual'), ('automatic','Automatico')], string="Tipo de transmision")
  28. fuel_type = fields.Selection([('gasoline','Gasolina'), ('diesel','Diesel'), ('electric','Electrico'), ('hybrid','Hibrido')], string="Tipo de combustible")
  29. seats = fields.Integer('Nro. de asientos')
  30. doors = fields.Integer('Nro. de puertas')
  31. car_brand_id = fields.Many2one(
  32. 'car.brand',
  33. string='Marca'
  34. )
  35. class CarBrand(models.Model):
  36. _name = 'car.brand'
  37. name = fields.Char('Brand Name', required=True)
  38. description = fields.Text('Description', translate=True)
  39. logo = fields.Binary('Logo File')
  40. car_ids = fields.One2many(
  41. 'car.service',
  42. 'car_brand_id',
  43. string='Marcas de autos',
  44. )
  45. car_count = fields.Integer(
  46. string='Numero de autos',
  47. compute='_get_car_count',
  48. )
  49. @api.one
  50. @api.depends('car_ids')
  51. def _get_car_count(self):
  52. self.car_count = len(self.car_ids)