From 83927ca37b13787358213ef8322991406cce4c25 Mon Sep 17 00:00:00 2001 From: Marades Date: Tue, 22 Apr 2025 22:54:33 +0900 Subject: [PATCH] =?UTF-8?q?chore:=20query=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/modules/folders/folders.v2.service.ts | 7 +++---- src/modules/posts/posts.pg.repository.ts | 7 ++++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/modules/folders/folders.v2.service.ts b/src/modules/folders/folders.v2.service.ts index b6e840f..1abc1df 100644 --- a/src/modules/folders/folders.v2.service.ts +++ b/src/modules/folders/folders.v2.service.ts @@ -3,7 +3,6 @@ import { Injectable, NotFoundException, } from '@nestjs/common'; -import { Types } from 'mongoose'; import { sum } from '@src/common'; import { FolderType } from '@src/infrastructure/database/types/folder-type.enum'; import { PostsPGRepository } from '../posts/posts.pg.repository'; @@ -71,21 +70,21 @@ export class FoldersV2Service { id: null, name: '전체', type: FolderType.ALL, - userId: new Types.ObjectId(userId), + userId, postCount: allPostCount, }; const favorite = { id: null, name: '즐겨찾기', type: FolderType.FAVORITE, - userId: new Types.ObjectId(userId), + userId, postCount: favoritePostCount, }; const readLater = { id: defaultFolder.id, name: defaultFolder.name, type: FolderType.DEFAULT, - userId: new Types.ObjectId(userId), + userId, postCount: allPostCount - customFoldersPostCount, }; diff --git a/src/modules/posts/posts.pg.repository.ts b/src/modules/posts/posts.pg.repository.ts index cc12946..c787001 100644 --- a/src/modules/posts/posts.pg.repository.ts +++ b/src/modules/posts/posts.pg.repository.ts @@ -133,11 +133,12 @@ export class PostsPGRepository extends Repository { async getPostCountByFolderIds(folderIds: string[]) { const posts = await this.createQueryBuilder('post') - .select('folderId') - .addSelect('COUNT(id)', 'count') - .where('folderId IN (:...folderIds)', { + .select('post.folderId', 'folderId') + .addSelect('COUNT(post.id)', 'count') + .where('post.folderId IN (:...folderIds)', { folderIds, }) + .groupBy('post.folderId') .getRawMany<{ folderId: string; postCount: string }>(); const result = posts.map((folder) => ({