[IMP] delivery: compute sale price of move

closes odoo/odoo#33913

Related: odoo/enterprise#4528
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
This commit is contained in:
Pierre Masereel
2020-02-04 14:37:39 +00:00
parent 2c079fcd10
commit 5b4c562fc5
2 changed files with 17 additions and 1 deletions
+16
View File
@@ -25,3 +25,19 @@ class StockMove(models.Model):
def _key_assign_picking(self):
keys = super(StockMove, self)._key_assign_picking()
return keys + (self.sale_line_id.order_id.carrier_id,)
class StockMoveLine(models.Model):
_inherit = 'stock.move.line'
sale_price = fields.Float(compute='_compute_sale_price')
@api.depends('qty_done', 'product_uom_id', 'product_id', 'move_id.sale_line_id', 'move_id.sale_line_id.price_reduce_taxinc', 'move_id.sale_line_id.product_uom')
def _compute_sale_price(self):
for move_line in self:
if move_line.move_id.sale_line_id:
unit_price = move_line.move_id.sale_line_id.price_reduce_taxinc
qty = move_line.product_uom_id._compute_quantity(move_line.qty_done, move_line.move_id.sale_line_id.product_uom)
else:
unit_price = move_line.product_id.list_price
qty = move_line.product_uom_id._compute_quantity(move_line.qty_done, move_line.product_id.uom_id)
move_line.sale_price = unit_price * qty
+1 -1
View File
@@ -63,7 +63,7 @@ class StockPicking(models.Model):
weight += move_line.product_uom_id._compute_quantity(move_line.qty_done, move_line.product_id.uom_id) * move_line.product_id.weight
picking.weight_bulk = weight
@api.depends('package_ids', 'package_ids.shipping_weight', 'weight_bulk')
@api.depends('move_line_ids.result_package_id', 'move_line_ids.result_package_id.shipping_weight', 'weight_bulk')
def _compute_shipping_weight(self):
for picking in self:
picking.shipping_weight = picking.weight_bulk + sum([pack.shipping_weight for pack in picking.package_ids])