diff --git a/src/app/api/mobile/discussion-general/[id]/comment/route.ts b/src/app/api/mobile/discussion-general/[id]/comment/route.ts index 34f78a2..c748522 100644 --- a/src/app/api/mobile/discussion-general/[id]/comment/route.ts +++ b/src/app/api/mobile/discussion-general/[id]/comment/route.ts @@ -37,6 +37,29 @@ export async function POST(request: Request, context: { params: { id: string } } } }) + const dataDiscussion = await prisma.discussion.findUnique({ + where: { + id + }, + select: { + createdBy: true, + User: { + select: { + Subscribe: { + select: { + subscription: true + } + }, + TokenDeviceUser: { + select: { + token: true + } + } + } + } + } + }) + const member = await prisma.discussionMember.findMany({ where: { idDiscussion: id, @@ -70,7 +93,10 @@ export async function POST(request: Request, context: { params: { id: string } } } }) - const memberFilter = member.filter((v: any) => v.idUser != userMobile.id) + const memberFilter = [...member, { idUser: dataDiscussion?.createdBy, User: dataDiscussion?.User }].filter((v: any) => v.idUser != userMobile.id) + .filter((v: any, index: number, self: any[]) => + index === self.findIndex((t) => t.idUser === v.idUser) + ); const dataFCM = memberFilter.map((v: any) => ({ ..._.omit(v, ["idUser", "User", "Subscribe", "TokenDeviceUser"]), diff --git a/src/app/api/mobile/discussion/[id]/comment/route.ts b/src/app/api/mobile/discussion/[id]/comment/route.ts index b205fcb..34d86ec 100644 --- a/src/app/api/mobile/discussion/[id]/comment/route.ts +++ b/src/app/api/mobile/discussion/[id]/comment/route.ts @@ -50,6 +50,21 @@ export async function POST(request: Request, context: { params: { id: string } } }, select: { idDivision: true, + createdBy: true, + User: { + select: { + Subscribe: { + select: { + subscription: true + } + }, + TokenDeviceUser: { + select: { + token: true + } + } + } + } } }) @@ -86,7 +101,10 @@ export async function POST(request: Request, context: { params: { id: string } } } }) - const memberFilter = member.filter((v: any) => v.idUser != userMobile.id) + const memberFilter = [...member, { idUser: dataDivision?.createdBy, User: dataDivision?.User }].filter((v: any) => v.idUser != userMobile.id) + .filter((v: any, index: number, self: any[]) => + index === self.findIndex((t) => t.idUser === v.idUser) + ); const dataFCM = memberFilter.map((v: any) => ({ ..._.omit(v, ["idUser", "User", "Subscribe", "TokenDeviceUser"]),