Rodney Enciso Arias 7 年之前
父節點
當前提交
44d545d9b1
共有 3 個文件被更改,包括 22 次插入17 次删除
  1. 11 5
      model/car_services.py
  2. 二進制
      model/car_services.pyc
  3. 11 12
      views/car_services_view.xml

+ 11 - 5
model/car_services.py

@@ -5,9 +5,9 @@ from openerp.exceptions import ValidationError
 class CarService(models.Model):
     _name = 'car.service'
 
-    name=fields.Char('Modelo y Número de chapa', required=True)
+    name=fields.Char('Nombre', compute='_get_vehicle_name', store=True)
     model=fields.Char('Modelo')
-    year=fields.Char('Año')
+    year=fields.Integer('Año')
     color=fields.Char('Color')
     number=fields.Char('Número de chapa')
 
@@ -40,13 +40,19 @@ class CarService(models.Model):
         'car.brand',
         string='Marca'
     )
+
     @api.one
-    @api.constrains('name')
-    def _controla_ruc(self):
-        part_obj = self.env['car.service'].search([('name','=',self.name)])
+    @api.constrains('number')
+    def _controla_chapa(self):
+        part_obj = self.env['car.service'].search([('number','=',self.number)])
         if len(part_obj) > 1:
             raise ValidationError('La chapa del vehículo debe ser único')
 
+    @api.one
+    @api.depends('car_brand_id','model','number')
+    def _get_vehicle_name(self):
+        self.name = self.car_brand_id.name + ' / ' +  self.model + ' / ' + self.number
+
 
 class CarBrand(models.Model):
     _name = 'car.brand'

二進制
model/car_services.pyc


+ 11 - 12
views/car_services_view.xml

@@ -9,15 +9,16 @@
                     <sheet>
                         <field name="logo" widget="image" class="oe_avatar oe_left"/>
                         <div class="oe_title">
-                            <div class="oe_edit_only">
-                                <label for="name" string="Modelo y Número de chapa"/>
-                            </div>
-                            <h1>
-                                <field name="name"/>
-                            </h1>
                             <h2>
-                                <field name="car_brand_id" placeholder="Marca"/>
+                                <field name="car_brand_id" placeholder="Marca" required="1"/>
                             </h2>
+                            <h2>
+                                <field name="model" placeholder="Modelo" required="1"/>
+                            </h2>
+                            <h2>
+                                <field name="number" placeholder="Número de chapa" required="1"/>
+                            </h2>
+
                         </div>
                         <notebook>
                             <page string="Configuración">
@@ -34,10 +35,6 @@
                                         <field name="odometer" string="Odometro"/>
                                         <field name="transmission" string="Tipo de transmisión"/>
                                         <field name="fuel_type" string="Tipo de combustible"/>
-                                        <field name="model" string="Modelo"/>
-                                        <field name="number" string="Número de chapa"/>
-                                        <field name="color" string="Color"/>
-                                        <field name="year" string="Año"/>
                                     </group>
                                 </group>
                                 <group>
@@ -47,6 +44,8 @@
                                     <group string="Información Adicional">
                                         <field name="seats" string="Número de asientos"/>
                                         <field name="doors" string="Número de puertas"/>
+                                        <field name="year" string="Año"/>
+                                        <field name="color" string="Color"/>
                                     </group>
                                 </group>
                             </page>
@@ -62,8 +61,8 @@
             <field name="arch" type="xml">
                 <tree string="Vehiculo">
                     <field name="name"/>
-                    <field name="car_brand_id"/>
                     <field name="partner_id"/>
+                    <field name="car_value"/>
                 </tree>
             </field>
         </record>