upd: penerima notifikasi

Deskripsi:
- pembuat data mendapat notifikasi saat user memberi komentar walaupun pembuat data bukan merupakan anggota dari diskusi umum maupun anggota divisi
- diskusi umum dan diskusi divis

No Issues
This commit is contained in:
2025-10-07 16:36:34 +08:00
parent 150151e823
commit bae91db60a
2 changed files with 46 additions and 2 deletions

View File

@@ -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"]),

View File

@@ -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"]),