diff --git a/backend/src/graphql/resolver/util/findContributions.ts b/backend/src/graphql/resolver/util/findContributions.ts index 6ad896b9f..f8fd581e4 100644 --- a/backend/src/graphql/resolver/util/findContributions.ts +++ b/backend/src/graphql/resolver/util/findContributions.ts @@ -3,6 +3,9 @@ import { Contribution as DbContribution } from '@entity/Contribution' import { Paginated } from '@arg/Paginated' import { SearchContributionsFilterArgs } from '@arg/SearchContributionsFilterArgs' +import { Connection } from '@typeorm/connection' + +import { LogError } from '@/server/LogError' interface Relations { [key: string]: boolean | Relations @@ -14,11 +17,20 @@ export const findContributions = async ( withDeleted = false, relations: Relations | undefined = undefined, ): Promise<[DbContribution[], number]> => { + const connection = await Connection.getInstance() + if (!connection) { + throw new LogError('Cannot connect to db') + } const requiredWhere = { ...(filter.statusFilter?.length && { contributionStatus: In(filter.statusFilter) }), ...(filter.userId && { userId: filter.userId }), ...(filter.noHashtag && { memo: Not(Like(`%#%`)) }), } + const queryBuilder = connection.getRepository(DbContribution).createQueryBuilder('Contribution') + queryBuilder.where(requiredWhere) + return queryBuilder.getManyAndCount() + /* + let where = filter.query && relations?.user @@ -65,4 +77,5 @@ export const findContributions = async ( skip: (paginate.currentPage - 1) * paginate.pageSize, take: paginate.pageSize, }) + */ } diff --git a/backend/tsconfig.json b/backend/tsconfig.json index 146cd41e3..6d27ca0fa 100644 --- a/backend/tsconfig.json +++ b/backend/tsconfig.json @@ -53,6 +53,7 @@ "@model/*": ["src/graphql/model/*"], "@union/*": ["src/graphql/union/*"], "@repository/*": ["src/typeorm/repository/*"], + "@typeorm/*": ["src/typeorm/*"], "@test/*": ["test/*"], /* external */ "@dbTools/*": ["../database/src/*", "../../database/build/src/*"],