From c3249a95bab905fa272a953133a643b49bdff557 Mon Sep 17 00:00:00 2001 From: Vidhu Kant Sharma Date: Mon, 28 Apr 2025 11:49:23 +0530 Subject: Added route to GET single transaction by id --- src/service/transaction.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/service/transaction.ts') diff --git a/src/service/transaction.ts b/src/service/transaction.ts index 8f1c99d..c3a2408 100644 --- a/src/service/transaction.ts +++ b/src/service/transaction.ts @@ -42,6 +42,21 @@ const read = async (userId: Number, type: String) => { }) } +const readOne = async (userId: Number, id: Number) => { + const transaction = await prisma.transaction.findUnique({ + // @ts-ignore + where: { id: id }, + }) + + // NOTE: this gon change a bit when there are also collaborators + // @ts-ignore + if (transaction.userId !== userId) { + throw new Error("forbidden") + } + + return transaction +} + // TODO: ig collaborated transactions would need more logic const del = async (userId: Number, transactionId: String) => { const t = await prisma.transaction.findUnique({ @@ -66,5 +81,6 @@ const del = async (userId: Number, transactionId: String) => { export { create, read, + readOne, del } -- cgit v1.2.3