aboutsummaryrefslogtreecommitdiffstats
path: root/prisma
diff options
context:
space:
mode:
Diffstat (limited to 'prisma')
-rw-r--r--prisma/migrations/20231208170655_add_timestamps/migration.sql5
-rw-r--r--prisma/migrations/20231208195456_add_delete_cascade/migration.sql17
-rw-r--r--prisma/schema.prisma8
3 files changed, 27 insertions, 3 deletions
diff --git a/prisma/migrations/20231208170655_add_timestamps/migration.sql b/prisma/migrations/20231208170655_add_timestamps/migration.sql
new file mode 100644
index 0000000..b1ec41d
--- /dev/null
+++ b/prisma/migrations/20231208170655_add_timestamps/migration.sql
@@ -0,0 +1,5 @@
+-- AlterTable
+ALTER TABLE "Expense" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
+
+-- AlterTable
+ALTER TABLE "Group" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
diff --git a/prisma/migrations/20231208195456_add_delete_cascade/migration.sql b/prisma/migrations/20231208195456_add_delete_cascade/migration.sql
new file mode 100644
index 0000000..80914fd
--- /dev/null
+++ b/prisma/migrations/20231208195456_add_delete_cascade/migration.sql
@@ -0,0 +1,17 @@
+-- DropForeignKey
+ALTER TABLE "Expense" DROP CONSTRAINT "Expense_groupId_fkey";
+
+-- DropForeignKey
+ALTER TABLE "Expense" DROP CONSTRAINT "Expense_paidById_fkey";
+
+-- DropForeignKey
+ALTER TABLE "ExpensePaidFor" DROP CONSTRAINT "ExpensePaidFor_participantId_fkey";
+
+-- AddForeignKey
+ALTER TABLE "Expense" ADD CONSTRAINT "Expense_groupId_fkey" FOREIGN KEY ("groupId") REFERENCES "Group"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "Expense" ADD CONSTRAINT "Expense_paidById_fkey" FOREIGN KEY ("paidById") REFERENCES "Participant"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "ExpensePaidFor" ADD CONSTRAINT "ExpensePaidFor_participantId_fkey" FOREIGN KEY ("participantId") REFERENCES "Participant"("id") ON DELETE CASCADE ON UPDATE CASCADE;
diff --git a/prisma/schema.prisma b/prisma/schema.prisma
index cc88c4e..edf68f2 100644
--- a/prisma/schema.prisma
+++ b/prisma/schema.prisma
@@ -17,6 +17,7 @@ model Group {
currency String @default("$")
participants Participant[]
expenses Expense[]
+ createdAt DateTime @default(now())
}
model Participant {
@@ -30,19 +31,20 @@ model Participant {
model Expense {
id String @id
- group Group @relation(fields: [groupId], references: [id])
+ group Group @relation(fields: [groupId], references: [id], onDelete: Cascade)
title String
amount Int
- paidBy Participant @relation(fields: [paidById], references: [id])
+ paidBy Participant @relation(fields: [paidById], references: [id], onDelete: Cascade)
paidById String
paidFor ExpensePaidFor[]
groupId String
isReimbursement Boolean @default(false)
+ createdAt DateTime @default(now())
}
model ExpensePaidFor {
expense Expense @relation(fields: [expenseId], references: [id], onDelete: Cascade)
- participant Participant @relation(fields: [participantId], references: [id])
+ participant Participant @relation(fields: [participantId], references: [id], onDelete: Cascade)
expenseId String
participantId String