diff --git a/rma_sale/models/rma.py b/rma_sale/models/rma.py index e305d1f8..dd44e2af 100644 --- a/rma_sale/models/rma.py +++ b/rma_sale/models/rma.py @@ -48,7 +48,7 @@ class Rma(models.Model): if rec.order_id: order_move = rec.order_id.order_line.mapped("move_ids") rec.allowed_move_ids = order_move.filtered( - lambda r: r.picking_id == self.picking_id + lambda r: r.picking_id == self.picking_id and r.state == "done" ).ids else: rec.allowed_move_ids = self.picking_id.move_lines.ids diff --git a/rma_sale/wizard/sale_order_rma_wizard.py b/rma_sale/wizard/sale_order_rma_wizard.py index ad7f539a..78de535f 100644 --- a/rma_sale/wizard/sale_order_rma_wizard.py +++ b/rma_sale/wizard/sale_order_rma_wizard.py @@ -152,6 +152,7 @@ class SaleOrderLineRmaWizard(models.TransientModel): r.sale_line_id == record.sale_line_id and r.sale_line_id.product_id == record.product_id and r.sale_line_id.order_id == record.order_id + and r.state == "done" ) ) else: @@ -169,7 +170,9 @@ class SaleOrderLineRmaWizard(models.TransientModel): line = record.order_id.order_line.filtered( lambda r: r.product_id == record.product_id ) - record.allowed_picking_ids = line.mapped("move_ids.picking_id") + record.allowed_picking_ids = line.mapped("move_ids.picking_id").filtered( + lambda x: x.state == "done" + ) def _prepare_rma_values(self): self.ensure_one()