|
@@ -11,7 +11,6 @@ import logging
|
|
|
|
|
|
_log = logging.getLogger(__name__)
|
|
|
|
|
|
-
|
|
|
class OrdenServicio(models.Model):
|
|
|
_name = 'orden.servicio'
|
|
|
_description = 'Orden de servicio'
|
|
@@ -21,12 +20,20 @@ class OrdenServicio(models.Model):
|
|
|
return self.env.uid
|
|
|
|
|
|
def _get_number(self):
|
|
|
- return self.env['ir.sequence'].get('orden.servicio') or '*'
|
|
|
+ return self.env['ir.sequence'].next_by_code('orden.servicio') or '*'
|
|
|
|
|
|
name = fields.Char(
|
|
|
string=u'Referencia',
|
|
|
- default=_get_number
|
|
|
+ readonly=True, # Mark the field as readonly
|
|
|
)
|
|
|
+
|
|
|
+ @api.model
|
|
|
+ def create(self, vals):
|
|
|
+ if not vals.get('name'):
|
|
|
+ vals['name'] = self._get_number()
|
|
|
+ return super(OrdenServicio, self).create(vals)
|
|
|
+
|
|
|
+
|
|
|
user_id = fields.Many2one(
|
|
|
comodel_name='res.users',
|
|
|
string='Usuario',
|
|
@@ -37,7 +44,7 @@ class OrdenServicio(models.Model):
|
|
|
comodel_name='res.partner',
|
|
|
string='Cliente'
|
|
|
)
|
|
|
- celular_partner = fields.Char(related='partner_id.mobile', string='Móvil', store=True)
|
|
|
+ celular_partner = fields.Char(related='partner_id.mobile', string='Móvil', store=True, required=True)
|
|
|
telefono_partner = fields.Char(related='partner_id.phone', string='Teléfono', store=True)
|
|
|
ubicacion_google_link = fields.Char(string='Ubicación Google Link')
|
|
|
currency_id = fields.Many2one('res.currency', string='Moneda Base')
|
|
@@ -83,7 +90,7 @@ class OrdenServicio(models.Model):
|
|
|
fotos_obras = fields.Many2many(comodel_name='ir.attachment', relation='obra_attachment_rel', column1='obra_id', column2='attachment_id', string='Fotos del trabajo')
|
|
|
horarios_dia = fields.One2many('horario.dia', 'servicio_id', 'Horarios por día')
|
|
|
|
|
|
- sale_order_id = fields.Many2one('sale.order', string='Orden de venta')
|
|
|
+ sale_order_id = fields.Many2one('sale.order', string='Orden de venta', required=True)
|
|
|
|
|
|
product_ids = fields.One2many(
|
|
|
comodel_name='servicio.producto',
|
|
@@ -139,6 +146,8 @@ class OrdenServicio(models.Model):
|
|
|
string='Estado',
|
|
|
default='draft'
|
|
|
)
|
|
|
+
|
|
|
+
|
|
|
@api.multi
|
|
|
@api.depends('product_ids.subtotal')
|
|
|
def _compute_total_producto(self):
|