From e3f842dd89115fb60fa35d0579e0b0f38343dbdd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Alix?= Date: Wed, 20 Apr 2022 16:05:48 +0200 Subject: [PATCH] stock_packaging_calculator: improve performance --- stock_packaging_calculator/models/product.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/stock_packaging_calculator/models/product.py b/stock_packaging_calculator/models/product.py index 71d706368..7259591c7 100644 --- a/stock_packaging_calculator/models/product.py +++ b/stock_packaging_calculator/models/product.py @@ -118,7 +118,12 @@ class Product(models.Model): "_packaging_values_handler", self._prepare_qty_by_packaging_values ) for pkg in pkg_by_qty: - qty_per_pkg, qty = self._qty_by_pkg(pkg.qty, qty) + # Boost perf: no need to deduce the qty_per_pkg if the pkg_qty is 1 + if float_compare(pkg.qty, 1, precision_digits=self.uom_id.rounding) == 0: + qty_per_pkg = int(qty) + qty = 0.0 + else: + qty_per_pkg, qty = self._qty_by_pkg(pkg.qty, qty) if qty_per_pkg: value = prepare_values(pkg, qty_per_pkg) if with_contained: