[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:
@@ -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
|
||||
|
||||
@@ -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])
|
||||
|
||||
Reference in New Issue
Block a user