|
@@ -33,11 +33,21 @@ class product_pack(models.Model):
|
|
|
'Discount (%)',
|
|
|
digits=dp.get_precision('Discount'),
|
|
|
)
|
|
|
+ pricecosto = fields.Float(
|
|
|
+ 'Precio Costo',
|
|
|
+ required=True,
|
|
|
+ default=0.0,
|
|
|
+ )
|
|
|
price = fields.Float(
|
|
|
- 'Precio',
|
|
|
+ 'Precio ',
|
|
|
required=True,
|
|
|
default=0.0,
|
|
|
)
|
|
|
+ subtotalcosto = fields.Float(
|
|
|
+ 'Subtotal Costo',
|
|
|
+ required=True,
|
|
|
+ compute="_product_price_subtotalcosto"
|
|
|
+ )
|
|
|
subtotal = fields.Float(
|
|
|
'Subtotal',
|
|
|
required=True,
|
|
@@ -54,6 +64,16 @@ class product_pack(models.Model):
|
|
|
|
|
|
self.subtotal = self.price * self.quantity
|
|
|
|
|
|
+ @api.one
|
|
|
+ @api.depends('product_id')
|
|
|
+ def _product_price_subtotalcosto(self):
|
|
|
+ if(self.pricecosto > 0):
|
|
|
+ self.subtotalcosto = self.pricecosto * self.quantity
|
|
|
+ else:
|
|
|
+ self.pricecosto = self.product_id.standard_price
|
|
|
+
|
|
|
+ self.subtotalcosto = self.pricecosto * self.quantity
|
|
|
+
|
|
|
@api.onchange('price')
|
|
|
def _product_change_price_subtotal(self):
|
|
|
if(self.price > 0):
|
|
@@ -63,6 +83,15 @@ class product_pack(models.Model):
|
|
|
|
|
|
self.subtotal = self.price * self.quantity
|
|
|
|
|
|
+ @api.onchange('pricecosto')
|
|
|
+ def _product_change_price_subtotalcosto(self):
|
|
|
+ if(self.pricecosto > 0):
|
|
|
+ self.subtotalcosto = self.pricecosto * self.quantity
|
|
|
+ else:
|
|
|
+ self.pricecosto = self.product_id.standard_price
|
|
|
+
|
|
|
+ self.subtotalcosto = self.pricecosto * self.quantity
|
|
|
+
|
|
|
@api.onchange('quantity')
|
|
|
def _product_change_quantity_subtotal(self):
|
|
|
if(self.price > 0):
|
|
@@ -72,6 +101,15 @@ class product_pack(models.Model):
|
|
|
|
|
|
self.subtotal = self.price * self.quantity
|
|
|
|
|
|
+ @api.onchange('quantity')
|
|
|
+ def _product_change_quantity_subtotalcosto(self):
|
|
|
+ if(self.pricecosto > 0):
|
|
|
+ self.subtotalcosto = self.pricecosto * self.quantity
|
|
|
+ else:
|
|
|
+ self.pricecosto = self.product_id.standard_price
|
|
|
+
|
|
|
+ self.subtotalcosto = self.pricecosto * self.quantity
|
|
|
+
|
|
|
@api.multi
|
|
|
def get_sale_order_line_vals(self, line, order):
|
|
|
self.ensure_one()
|