From 9931a29930c5be3db3cb5cfcf5d91f3248f7ced1 Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Mon, 24 Jul 2017 10:50:19 +0200 Subject: [PATCH] [FIX] stock: include zero quantity products in search results A special case was made for products not available when running a search on the qty_available field. For domains like ('qty_available', '<=', 5), it should include non-available products too. Fixes #18336 --- addons/stock/models/product.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/addons/stock/models/product.py b/addons/stock/models/product.py index c77d8ced1a4..dc32bce084c 100644 --- a/addons/stock/models/product.py +++ b/addons/stock/models/product.py @@ -272,6 +272,10 @@ class Product(models.Model): if value == 0.0 and operator in ('=', '>=', '<='): return self._search_product_quantity(operator, value, 'qty_available') product_ids = self._search_qty_available_new(operator, value, self._context.get('lot_id'), self._context.get('owner_id'), self._context.get('package_id')) + if (value > 0 and operator in ('<=', '<')) or (value < 0 and operator in ('>=', '>')): + # include also unavailable products + domain = self._search_product_quantity(operator, value, 'qty_available') + product_ids += domain[0][2] return [('id', 'in', product_ids)] def _search_qty_available_new(self, operator, value, lot_id=False, owner_id=False, package_id=False):