From 7e2593e52b9a5e545ec96f6de15804af33675d60 Mon Sep 17 00:00:00 2001 From: Patrick Tombez Date: Wed, 14 Feb 2024 11:12:48 +0100 Subject: [PATCH] [16.0][FIX] product_packaging_level: Preserve sequence order --- product_packaging_level/models/product_packaging.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/product_packaging_level/models/product_packaging.py b/product_packaging_level/models/product_packaging.py index 95e128ac92b..e38408d4071 100644 --- a/product_packaging_level/models/product_packaging.py +++ b/product_packaging_level/models/product_packaging.py @@ -8,8 +8,8 @@ class ProductPackaging(models.Model): _inherit = "product.packaging" - _order = "product_id, level_sequence" + sequence = fields.Integer(compute="_compute_sequence", store=True, readonly=False) packaging_level_id = fields.Many2one( "product.packaging.level", required=True, @@ -19,12 +19,6 @@ class ProductPackaging(models.Model): barcode_required_for_gtin = fields.Boolean( readonly=True, compute="_compute_barcode_required_for_gtin" ) - level_sequence = fields.Integer( - string="Level Sequence", - related="packaging_level_id.sequence", - readonly=True, - store=True, - ) qty_per_level = fields.Char( compute="_compute_qty_per_level", string="Qty per package level" ) @@ -61,6 +55,11 @@ def _check_one_packaging_level_per_product(self): ).format(product.display_name) ) + @api.depends("packaging_level_id") + def _compute_sequence(self): + for packaging in self: + packaging.sequence = packaging.packaging_level_id.sequence + @api.depends("packaging_level_id", "packaging_level_id.has_gtin", "qty") def _compute_barcode_required_for_gtin(self): for packaging in self: