From d4e40cd1e9003a6f72d59ef80909009fe7173653 Mon Sep 17 00:00:00 2001 From: amel Date: Tue, 6 Aug 2024 10:29:54 +0800 Subject: [PATCH] upd: divisi --- prisma/schema.prisma | 2 +- .../api/get/getOneDetailDivision.ts | 50 ++++++++++++++++++- .../feature_detail_division.tsx | 6 +-- .../view/view_detail_division.tsx | 8 ++- 4 files changed, 59 insertions(+), 7 deletions(-) diff --git a/prisma/schema.prisma b/prisma/schema.prisma index cec1f07..5d719d7 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -257,7 +257,7 @@ model DivisionProject { idDivision String title String desc String @db.Text - status Int @default(0) + status Int @default(0) // 0 = pending, 1 = ongoing, 2 = done, 3 = cancelled isActive Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt diff --git a/src/module/division_new/api/get/getOneDetailDivision.ts b/src/module/division_new/api/get/getOneDetailDivision.ts index c9e31c0..af8d72a 100644 --- a/src/module/division_new/api/get/getOneDetailDivision.ts +++ b/src/module/division_new/api/get/getOneDetailDivision.ts @@ -5,6 +5,8 @@ export default async function getOneDetailDivision(req: NextRequest) { try { const searchParams = req.nextUrl.searchParams const id = searchParams.get('divisionId'); + + console.log('aaaaa',id) const division = await prisma.division.findUnique({ where: { id: String(id), @@ -25,10 +27,54 @@ export default async function getOneDetailDivision(req: NextRequest) { } }) + const tugas = await prisma.divisionProject.count({ + where: { + idDivision: String(id), + status: { + lte: 1 + }, + isActive: true + } + }) + + const dokumen = await prisma.divisionDocumentFolderFile.count({ + where: { + idDivision: String(id), + isActive: true, + category: "FILE" + } + }) + + const diskusi = await prisma.divisionDisscussion.count({ + where: { + idDivision: String(id), + isActive: true, + status: 1 + } + }) + + const kalender = await prisma.divisionCalendar.count({ + where: { + idDivision: String(id), + isActive: true, + dateStart: { + lte: new Date() + } + } + }) + const allData = { - division: division, - member: member + // division: division, + division:{name:id}, + jumlah:{ + tugas: 1, + dokumen: dokumen, + diskusi: diskusi, + kalender: kalender + }, + member: member, } + return Response.json(allData); } catch (error) { console.error(error); diff --git a/src/module/division_new/components/detail_division/feature_detail_division.tsx b/src/module/division_new/components/detail_division/feature_detail_division.tsx index 2fc5ad8..c5e2237 100644 --- a/src/module/division_new/components/detail_division/feature_detail_division.tsx +++ b/src/module/division_new/components/detail_division/feature_detail_division.tsx @@ -52,7 +52,7 @@ export default function FeatureDetailDivision({ id }: { id: string }) { border: `1px solid ${WARNA.bgHijauMuda}`, borderRadius: 10, padding: 10 - }} onClick={() => router.push('/document')}> + }} onClick={() => router.push(id + '/document')}> router.push('/discussion')}> + }} onClick={() => router.push(id + '/discussion')}> router.push('/calender')}> + }} onClick={() => router.push(id + '/calender')}>