Pull Request branch dev-clone to main #1

Merged
gitea merged 429 commits from dev-clone into main 2024-12-23 09:31:34 +00:00
Showing only changes of commit 08e60c6f2f - Show all commits

View File

@ -587,11 +587,14 @@ const assessmentsRoute = new Hono<HonoEnv>()
async (c) => { async (c) => {
const optionData = c.req.valid("json"); const optionData = c.req.valid("json");
// Cek apakah jawaban sudah ada berdasarkan assessmentId // Cek apakah jawaban sudah ada berdasarkan assessmentId dan optionId
const existingAnswer = await db const existingAnswer = await db
.select() .select()
.from(answers) .from(answers)
.where(eq(answers.assessmentId, optionData.assessmentId)) .where(
sql`answers.assessmentId = ${optionData.assessmentId}
AND answers.optionId = ${optionData.optionId}`
) // Asumsi optionId berkaitan dengan questionId
.limit(1); .limit(1);
let answer; let answer;
@ -599,8 +602,15 @@ const assessmentsRoute = new Hono<HonoEnv>()
// Update jika jawaban sudah ada // Update jika jawaban sudah ada
answer = await db answer = await db
.update(answers) .update(answers)
.set({ optionId: optionData.optionId }) // Ubah ke pilihan baru .set({
.where(eq(answers.assessmentId, optionData.assessmentId)) optionId: optionData.optionId, // Ubah ke pilihan baru
isFlagged: optionData.isFlagged ?? existingAnswer[0].isFlagged, // Pertahankan flag jika tidak diubah
filename: optionData.filename ?? existingAnswer[0].filename // Pertahankan filename jika tidak diubah
})
.where(
sql`answers.assessmentId = ${optionData.assessmentId}
AND answers.optionId = ${optionData.optionId}`
) // Tambahkan kondisi untuk questionId
.returning(); .returning();
} else { } else {
// Insert jika belum ada jawaban // Insert jika belum ada jawaban