diff --git a/src/app/api/ai/discussion-general/[id]/route.ts b/src/app/api/ai/discussion-general/[id]/route.ts index 3df7047..aae67dd 100644 --- a/src/app/api/ai/discussion-general/[id]/route.ts +++ b/src/app/api/ai/discussion-general/[id]/route.ts @@ -1,7 +1,5 @@ import { prisma } from "@/module/_global"; import _ from "lodash"; -import moment from "moment"; -import "moment/locale/id"; import { NextResponse } from "next/server"; @@ -10,12 +8,15 @@ export async function GET(request: Request, context: { params: { id: string } }) try { let dataFix const { id } = context.params + const { searchParams } = new URL(request.url); const kategori = searchParams.get("cat"); + const idVillage = searchParams.get("desa"); const cek = await prisma.discussion.count({ where: { id, + idVillage: String(idVillage) } }) @@ -23,33 +24,7 @@ export async function GET(request: Request, context: { params: { id: string } }) return NextResponse.json({ success: false, message: "Gagal mendapatkan diskusi, data tidak ditemukan" }, { status: 404 }); } - if (kategori == "detail") { - const data = await prisma.discussion.findUnique({ - where: { - id, - }, - select: { - isActive: true, - id: true, - title: true, - idGroup: true, - desc: true, - status: true, - createdAt: true, - } - }) - - dataFix = { - id: data?.id, - isActive: data?.isActive, - idGroup: data?.idGroup, - title: data?.title, - desc: data?.desc, - status: data?.status, - createdAt: moment(data?.createdAt).format("ll"), - } - - } else if (kategori == "komentar") { + if (kategori == "comment") { const data = await prisma.discussionComment.findMany({ where: { idDiscussion: id, @@ -70,13 +45,12 @@ export async function GET(request: Request, context: { params: { id: string } }) }) dataFix = data.map((v: any) => ({ - ..._.omit(v, ["createdAt", "User",]), - createdAt: moment(v.createdAt).format("lll").replace('pukul', ''), + ..._.omit(v, ["User",]), username: v.User.name, img: v.User.img })) - } else if (kategori == "anggota") { + } else if (kategori == "member") { const data = await prisma.discussionMember.findMany({ where: { idDiscussion: id, @@ -98,6 +72,38 @@ export async function GET(request: Request, context: { params: { id: string } }) name: v.User.name, img: v.User.img })) + } else { + const data = await prisma.discussion.findUnique({ + where: { + id, + idVillage: String(idVillage) + }, + select: { + isActive: true, + id: true, + title: true, + idGroup: true, + desc: true, + status: true, + createdAt: true, + Group: { + select: { + name: true, + } + } + } + }) + + dataFix = { + id: data?.id, + isActive: data?.isActive, + idGroup: data?.idGroup, + group: data?.Group.name, + title: data?.title, + desc: data?.desc, + status: data?.status == 1 ? "Open" : "Close", + createdAt: data?.createdAt + } }