From 3476f680ed61f784b249aba750a8fbefe21917d1 Mon Sep 17 00:00:00 2001 From: elweyn Date: Fri, 17 Feb 2023 13:53:58 +0100 Subject: [PATCH] Remove QueryBuilder and rewrite it with ContributionEntity.findAndCount method. --- .../graphql/resolver/ContributionResolver.ts | 31 +++++++------------ 1 file changed, 12 insertions(+), 19 deletions(-) diff --git a/backend/src/graphql/resolver/ContributionResolver.ts b/backend/src/graphql/resolver/ContributionResolver.ts index d2e6001c9..0d1e6db9a 100644 --- a/backend/src/graphql/resolver/ContributionResolver.ts +++ b/backend/src/graphql/resolver/ContributionResolver.ts @@ -431,25 +431,18 @@ export class ContributionResolver { @Arg('statusFilter', () => [ContributionStatus], { nullable: true }) statusFilter?: ContributionStatus[], ): Promise { - const where: { - contributionStatus?: FindOperator | null - } = {} - - if (statusFilter && statusFilter.length) { - where.contributionStatus = In(statusFilter) - } - - const [dbContributions, count] = await getConnection() - .createQueryBuilder() - .select('c') - .from(DbContribution, 'c') - .innerJoinAndSelect('c.user', 'u') - .where(where) - .withDeleted() - .orderBy('c.createdAt', order) - .limit(pageSize) - .offset((currentPage - 1) * pageSize) - .getManyAndCount() + const [dbContributions, count] = await DbContribution.findAndCount({ + where: { + ...(statusFilter && statusFilter.length && { contributionStatus: In(statusFilter) }), + }, + withDeleted: true, + order: { + createdAt: order, + }, + relations: ['user'], + skip: (currentPage - 1) * pageSize, + take: pageSize, + }) return new ContributionListResult( count,