From 06360d6b7b6f9e7563e69d0c529c4f8159ce6ba0 Mon Sep 17 00:00:00 2001 From: mattrwang Date: Wed, 22 Jan 2025 13:42:40 -0500 Subject: [PATCH] max 2 reviews per cycle --- packages/api/src/router/review.ts | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/packages/api/src/router/review.ts b/packages/api/src/router/review.ts index 7da1934..fa7cd99 100644 --- a/packages/api/src/router/review.ts +++ b/packages/api/src/router/review.ts @@ -74,7 +74,7 @@ export const reviewRouter = { create: protectedProcedure .input(CreateReviewSchema) .mutation(async ({ ctx, input }) => { - console.log("hey"); + console.log("new review"); if (!input.profileId) { console.log("no profile id"); throw new TRPCError({ @@ -92,6 +92,18 @@ export const reviewRouter = { message: "You can only leave 5 reviews", }); } + const reviewsInSameCycle = reviews.filter( + (review) => + review.workTerm === input.workTerm && + review.workYear === input.workYear, + ); + if (reviewsInSameCycle.length >= 2) { + console.log("already 2 in same cycle"); + throw new TRPCError({ + code: "FORBIDDEN", + message: "You can only leave 2 reviews per cycle", + }); + } console.log("success"); return ctx.db.insert(Review).values(input); }),