From f86b69769dbe3740a773409a358b069263fa887e Mon Sep 17 00:00:00 2001 From: abiyasa05 Date: Thu, 10 Oct 2024 15:26:45 +0700 Subject: [PATCH] update: revision for getAllQuestion to add needFile --- apps/backend/src/routes/assessments/route.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/apps/backend/src/routes/assessments/route.ts b/apps/backend/src/routes/assessments/route.ts index 4b00eee..a86f64c 100644 --- a/apps/backend/src/routes/assessments/route.ts +++ b/apps/backend/src/routes/assessments/route.ts @@ -214,6 +214,7 @@ const assessmentsRoute = new Hono() questionText: string | null; optionId: string; optionText: string; + needFile: boolean | null; optionScore: number; fullCount?: number; }; @@ -238,6 +239,7 @@ const assessmentsRoute = new Hono() questionText: questions.question, optionId: options.id, optionText: options.text, + needFile: questions.needFile, optionScore: options.score, fullCount: totalCountQuery, }) @@ -251,6 +253,7 @@ const assessmentsRoute = new Hono() type GroupedQuestion = { questionId: string | null; questionText: string | null; + needFile: boolean | null; aspectsId: string | null; aspectsName: string | null; subAspectId: string | null; @@ -264,7 +267,7 @@ const assessmentsRoute = new Hono() // Mengelompokkan berdasarkan questionId const groupedResult: GroupedQuestion[] = result.reduce((acc, current) => { - const { questionId, questionText, aspectsId, aspectsName, subAspectId, subAspectName, optionId, optionText, optionScore } = current; + const { questionId, questionText, needFile, aspectsId, aspectsName, subAspectId, subAspectName, optionId, optionText, optionScore } = current; // Cek apakah questionId sudah ada dalam accumulator const existingQuestion = acc.find(q => q.questionId === questionId); @@ -281,6 +284,7 @@ const assessmentsRoute = new Hono() acc.push({ questionId, questionText, + needFile, aspectsId, aspectsName, subAspectId, @@ -632,6 +636,7 @@ const assessmentsRoute = new Hono() const averageScores = await db .select({ + aspectId: subAspects.aspectId, subAspectId: subAspects.id, subAspectName: subAspects.name, average: sql`AVG(options.score)` @@ -649,7 +654,8 @@ const assessmentsRoute = new Hono() subAspects: averageScores.map(score => ({ subAspectId: score.subAspectId, subAspectName: score.subAspectName, - averageScore: score.average + averageScore: score.average, + aspectId: score.aspectId })) }); }