From 47510c0785cb9d2bfbd278ce67f18cc291f6e1c5 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Thu, 21 Sep 2023 19:40:23 +0800 Subject: [PATCH] fix recommendations not fetched in search results --- packages/api/src/services/library_item.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/api/src/services/library_item.ts b/packages/api/src/services/library_item.ts index 08964a55b..f1eeacbe0 100644 --- a/packages/api/src/services/library_item.ts +++ b/packages/api/src/services/library_item.ts @@ -245,10 +245,7 @@ const buildWhereClause = ( } if (args.recommendedBy) { - queryBuilder - .innerJoin('library_item.recommendations', 'recommendations') - .innerJoin('recommendations.recommender', 'recommender') - .innerJoin('recommendations.group', 'group') + queryBuilder.andWhere('recommendations IS NOT NULL') // select all if * is provided if (args.recommendedBy !== '*') { @@ -282,6 +279,11 @@ export const searchLibraryItems = async ( .leftJoinAndSelect('library_item.highlights', 'highlights') .leftJoinAndSelect('highlights.user', 'user') .leftJoinAndSelect('user.profile', 'profile') + .leftJoinAndSelect('library_item.recommendations', 'recommendations') + .leftJoinAndSelect('recommendations.recommender', 'recommender') + .leftJoinAndSelect('recommendations.group', 'group') + .leftJoinAndSelect('recommender.profile', 'recommender_profile') + .where('library_item.user_id = :userId', { userId }) // build the where clause buildWhereClause(queryBuilder, args)