From 452dffab48cedcf44949caaf2036084196b6522e Mon Sep 17 00:00:00 2001 From: diptanilsaha Date: Tue, 31 Dec 2024 13:22:18 +0530 Subject: [PATCH 1/2] fix: load price list rate for pos search term (cherry picked from commit 4b6cae156e2ece905158eaa649a9812d92bc87dd) --- .../selling/page/point_of_sale/point_of_sale.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/erpnext/selling/page/point_of_sale/point_of_sale.py b/erpnext/selling/page/point_of_sale/point_of_sale.py index 206e51bbc5a..f00b7d0fc55 100644 --- a/erpnext/selling/page/point_of_sale/point_of_sale.py +++ b/erpnext/selling/page/point_of_sale/point_of_sale.py @@ -58,13 +58,17 @@ def search_by_term(search_term, warehouse, price_list): item_stock_qty = item_stock_qty // item.get("conversion_factor", 1) item.update({"actual_qty": item_stock_qty}) + price_filters = { + "price_list": price_list, + "item_code": item_code, + } + + if batch_no: + price_filters["batch_no"] = batch_no + price = frappe.get_list( doctype="Item Price", - filters={ - "price_list": price_list, - "item_code": item_code, - "batch_no": batch_no, - }, + filters=price_filters, fields=["uom", "currency", "price_list_rate", "batch_no"], ) From 59af144e298dbdb0ae5dbd4281bc0b2a1e9f615b Mon Sep 17 00:00:00 2001 From: diptanilsaha Date: Tue, 31 Dec 2024 14:55:01 +0530 Subject: [PATCH 2/2] fix: load search term price with customer default price list (cherry picked from commit 2beb485d7753e8b0cf399cf9025ea349a5857a3e) --- erpnext/selling/page/point_of_sale/pos_item_selector.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/erpnext/selling/page/point_of_sale/pos_item_selector.js b/erpnext/selling/page/point_of_sale/pos_item_selector.js index 9882c2d201e..909d1bb9c2d 100644 --- a/erpnext/selling/page/point_of_sale/pos_item_selector.js +++ b/erpnext/selling/page/point_of_sale/pos_item_selector.js @@ -328,13 +328,16 @@ erpnext.PointOfSale.ItemSelector = class { } filter_items({ search_term = "" } = {}) { + const selling_price_list = this.events.get_frm().doc.selling_price_list; + if (search_term) { search_term = search_term.toLowerCase(); // memoize this.search_index = this.search_index || {}; - if (this.search_index[search_term]) { - const items = this.search_index[search_term]; + this.search_index[selling_price_list] = this.search_index[selling_price_list] || {}; + if (this.search_index[selling_price_list][search_term]) { + const items = this.search_index[selling_price_list][search_term]; this.items = items; this.render_item_list(items); this.auto_add_item && this.items.length == 1 && this.add_filtered_item_to_cart(); @@ -346,7 +349,7 @@ erpnext.PointOfSale.ItemSelector = class { // eslint-disable-next-line no-unused-vars const { items, serial_no, batch_no, barcode } = message; if (search_term && !barcode) { - this.search_index[search_term] = items; + this.search_index[selling_price_list][search_term] = items; } this.items = items; this.render_item_list(items);