Odoo18-Base/addons/mrp_account/models/stock_valuation_layer.py

17 lines
623 B
Python

# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import models
class StockValuationLayer(models.Model):
_inherit = 'stock.valuation.layer'
def _candidate_sort_key(self):
self.ensure_one()
res = super()._candidate_sort_key()
if self.product_id in self.env.context.get('product_unbuild_map', ()):
unbuild = self.env.context['product_unbuild_map'][self.product_id]
# Give priority to the SVL that produced `self.product_id`
res += (self.stock_move_id.id not in unbuild.mo_id.move_finished_ids.ids,)
return res