diff --git a/addons/point_of_sale/static/src/js/Screens/ProductScreen/ProductsWidgetControlPanel.js b/addons/point_of_sale/static/src/js/Screens/ProductScreen/ProductsWidgetControlPanel.js index 8ee678c4a06..87f13db6347 100644 --- a/addons/point_of_sale/static/src/js/Screens/ProductScreen/ProductsWidgetControlPanel.js +++ b/addons/point_of_sale/static/src/js/Screens/ProductScreen/ProductsWidgetControlPanel.js @@ -54,7 +54,7 @@ odoo.define('point_of_sale.ProductsWidgetControlPanel', function(require) { let ProductIds = await this.rpc({ model: 'product.product', method: 'search', - args: [[['name', 'ilike', this.searchWordInput.el.value + "%"]]], + args: [['&', ['name', 'ilike', this.searchWordInput.el.value + "%"], ['available_in_pos', '=', true]]], context: this.env.session.user_context, }); if(!ProductIds.length) { @@ -63,7 +63,7 @@ odoo.define('point_of_sale.ProductsWidgetControlPanel', function(require) { body: this.env._t("No product found"), }); } else { - await this.env.pos._addProducts(ProductIds); + await this.env.pos._addProducts(ProductIds, false); } this.trigger('update-product-list'); } catch (error) { diff --git a/addons/point_of_sale/static/src/js/models.js b/addons/point_of_sale/static/src/js/models.js index e7b84b9e11a..f4c85fc33c7 100644 --- a/addons/point_of_sale/static/src/js/models.js +++ b/addons/point_of_sale/static/src/js/models.js @@ -990,13 +990,15 @@ class PosGlobalState extends PosModel { * Make the products corresponding to the given ids to be available_in_pos and * fetch them to be added on the loaded products. */ - async _addProducts(ids){ - await this.env.services.rpc({ - model: 'product.product', - method: 'write', - args: [ids, {'available_in_pos': true}], - context: this.env.session.user_context, - }); + async _addProducts(ids, setAvailable=true){ + if(setAvailable){ + await this.env.services.rpc({ + model: 'product.product', + method: 'write', + args: [ids, {'available_in_pos': true}], + context: this.env.session.user_context, + }); + } let product = await this.env.services.rpc({ model: 'pos.session', method: 'get_pos_ui_product_product_by_params',