From 47266377e11084c9fc8c9aa5e39343b6b3349920 Mon Sep 17 00:00:00 2001 From: MohammadHMazarei Date: Sun, 27 Apr 2025 16:55:50 +0330 Subject: [PATCH 1/2] ADD: updateInputQuery logic --- components/transaction/transactionService.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/components/transaction/transactionService.js b/components/transaction/transactionService.js index 49d4f5f..098e640 100644 --- a/components/transaction/transactionService.js +++ b/components/transaction/transactionService.js @@ -166,6 +166,8 @@ const ensureCollectionExists = async () => { } const searchTransactions = async (inputQuery) => { + inputQuery = updateInputQuery(inputQuery, {}) + const tsFeatures = new TsApiFeatures(client, 'transactions', inputQuery).filter().facet().sort().limitFields().paginate().search() let { facets, items, totalCount, pagesCount } = await tsFeatures.execute() @@ -173,6 +175,16 @@ const searchTransactions = async (inputQuery) => { return { facets, transactions: items, totalCount, pagesCount } } +const updateInputQuery = (inputQuery, extraQueries, features) => { + for (const [key, value] of Object.entries(extraQueries)) { + inputQuery[key] = value + } + + inputQuery.query_by = 'description,_id' + + return inputQuery +} + const indexAllTransactions = async () => { const batchSize = 20 const count = await Transaction.countDocuments({}, null) From 013828badccda3f0f3f16bef5dc456bfae2556c8 Mon Sep 17 00:00:00 2001 From: MohammadHMazarei Date: Sun, 27 Apr 2025 16:55:58 +0330 Subject: [PATCH 2/2] ADD: updateInputQuery logic --- components/belonging/belongingService.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/components/belonging/belongingService.js b/components/belonging/belongingService.js index 8bb3656..2b6c262 100644 --- a/components/belonging/belongingService.js +++ b/components/belonging/belongingService.js @@ -67,12 +67,25 @@ const ensureCollectionExists = async () => { } const searchBelongings = async (inputQuery) => { + inputQuery = updateInputQuery(inputQuery, {}) + const tsFeatures = new TsApiFeatures(client, 'belongings', inputQuery).filter().facet().sort().limitFields().paginate().search() let { facets, items, totalCount, pagesCount } = await tsFeatures.execute() return { facets, belongings: items, totalCount, pagesCount } } + +const updateInputQuery = (inputQuery, extraQueries, features) => { + for (const [key, value] of Object.entries(extraQueries)) { + inputQuery[key] = value + } + + inputQuery.query_by = 'name,unit,tags,description,_id' + + return inputQuery +} + const indexAllBelongings = async () => { const batchSize = 20 const count = await Belonging.countDocuments({}, null)