diff --git a/prisma/erd.svg b/prisma/erd.svg
index a7839aa..3c18a5c 100644
--- a/prisma/erd.svg
+++ b/prisma/erd.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/helpers/submissions.helper.ts b/src/helpers/submissions.helper.ts
index c885c44..050d3fe 100644
--- a/src/helpers/submissions.helper.ts
+++ b/src/helpers/submissions.helper.ts
@@ -11,6 +11,7 @@ import {
} from "../models/deadline.db";
import {
createUniqueSubmission,
+ findFirstSubmission,
findManySubmissions,
findUniqueSubmission,
updateUniqueSubmission,
@@ -120,6 +121,20 @@ export async function createOneSubmission(body: {
toProjectId,
toUserId,
} = submission;
+ const existingSubmission = await findFirstSubmission({
+ where: {
+ deadlineId,
+ fromProjectId: fromProjectId ?? null,
+ fromUserId: fromUserId ?? null,
+ toProjectId: toProjectId ?? null,
+ toUserId: toUserId ?? null,
+ },
+ });
+
+ if (existingSubmission) {
+ return existingSubmission;
+ }
+
const createdSubmission = await createUniqueSubmission({
data: {
deadline: { connect: { id: deadlineId } },
@@ -182,7 +197,10 @@ export async function updateOneSubmissionBySubmissionId(
});
}
- return await findUniqueSubmission({ where: { id: submissionId } });
+ return await findUniqueSubmission({
+ where: { id: submissionId },
+ include: { answers: true },
+ });
}
export async function getAnonymousAnswersViaAdviserID(adviserId: number) {