Skip to content
Snippets Groups Projects
Commit 6b24df0e authored by Aurélien (avd)'s avatar Aurélien (avd)
Browse files

[FIX] purchase_stock: compute_picking perfs improvements


Backport odoo/odoo#35878, adding an explicit mapped
because Relational.__get__ introduced in 13.0.

closes odoo/odoo#72469

Signed-off-by: default avatarRémy Voet <ryv-odoo@users.noreply.github.com>
parent 7b311f36
Branches
Tags
No related merge requests found
......@@ -33,17 +33,10 @@ class PurchaseOrder(models.Model):
group_id = fields.Many2one('procurement.group', string="Procurement Group", copy=False)
is_shipped = fields.Boolean(compute="_compute_is_shipped")
@api.depends('order_line.move_ids.returned_move_ids',
'order_line.move_ids.state',
'order_line.move_ids.picking_id')
@api.depends('order_line.move_ids.picking_id')
def _compute_picking(self):
for order in self:
pickings = self.env['stock.picking']
for line in order.order_line:
# We keep a limited scope on purpose. Ideally, we should also use move_orig_ids and
# do some recursive search, but that could be prohibitive if not done correctly.
moves = line.move_ids | line.move_ids.mapped('returned_move_ids')
pickings |= moves.mapped('picking_id')
pickings = order.order_line.mapped('move_ids.picking_id')
order.picking_ids = pickings
order.picking_count = len(pickings)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment