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:
@@ -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({
|
const member = await prisma.discussionMember.findMany({
|
||||||
where: {
|
where: {
|
||||||
idDiscussion: id,
|
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) => ({
|
const dataFCM = memberFilter.map((v: any) => ({
|
||||||
..._.omit(v, ["idUser", "User", "Subscribe", "TokenDeviceUser"]),
|
..._.omit(v, ["idUser", "User", "Subscribe", "TokenDeviceUser"]),
|
||||||
|
|||||||
@@ -50,6 +50,21 @@ export async function POST(request: Request, context: { params: { id: string } }
|
|||||||
},
|
},
|
||||||
select: {
|
select: {
|
||||||
idDivision: true,
|
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) => ({
|
const dataFCM = memberFilter.map((v: any) => ({
|
||||||
..._.omit(v, ["idUser", "User", "Subscribe", "TokenDeviceUser"]),
|
..._.omit(v, ["idUser", "User", "Subscribe", "TokenDeviceUser"]),
|
||||||
|
|||||||
Reference in New Issue
Block a user