From bcbd60dc770b7d59100334165316367def9f88d8 Mon Sep 17 00:00:00 2001 From: Alfredo Zamora Date: Thu, 25 Nov 2021 19:14:35 +0000 Subject: [PATCH] [FIX] stock: stock.picking.state to draft associating existing picking to a computed field X-original-commit: 86315761dc154e55dd464a6945eea4ac178fb602 Part-of: odoo/odoo#80539 --- addons/stock/models/stock_picking.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/addons/stock/models/stock_picking.py b/addons/stock/models/stock_picking.py index cb49768577c..7c2b3da1b43 100644 --- a/addons/stock/models/stock_picking.py +++ b/addons/stock/models/stock_picking.py @@ -521,16 +521,17 @@ class Picking(models.Model): }) picking_move_lines[picking_id.id].add(move.id) for picking in self: - if not picking_moves_state_map[picking.id]: + picking_id = (picking.ids and picking.ids[0]) or picking.id + if not picking_moves_state_map[picking_id]: picking.state = 'draft' - elif picking_moves_state_map[picking.id]['any_draft']: + elif picking_moves_state_map[picking_id]['any_draft']: picking.state = 'draft' - elif picking_moves_state_map[picking.id]['all_cancel']: + elif picking_moves_state_map[picking_id]['all_cancel']: picking.state = 'cancel' - elif picking_moves_state_map[picking.id]['all_cancel_done']: + elif picking_moves_state_map[picking_id]['all_cancel_done']: picking.state = 'done' else: - relevant_move_state = self.env['stock.move'].browse(picking_move_lines[picking.id])._get_relevant_state_among_moves() + relevant_move_state = self.env['stock.move'].browse(picking_move_lines[picking_id])._get_relevant_state_among_moves() if picking.immediate_transfer and relevant_move_state not in ('draft', 'cancel', 'done'): picking.state = 'assigned' elif relevant_move_state == 'partially_available':