From d43e731fe191d7e35d96847fe095c94555dd8ca6 Mon Sep 17 00:00:00 2001 From: Sebastien Castiel Date: Sun, 28 Jan 2024 18:51:29 -0500 Subject: Attach documents to expenses (#64) * Upload documents to receipts * Improve documents * Make the feature opt-in * Fix file name issue --- prisma/schema.prisma | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) (limited to 'prisma/schema.prisma') diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 1fbfc65..394342d 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -37,20 +37,30 @@ model Category { } model Expense { - id String @id - group Group @relation(fields: [groupId], references: [id], onDelete: Cascade) - expenseDate DateTime @default(dbgenerated("CURRENT_DATE")) @db.Date + id String @id + group Group @relation(fields: [groupId], references: [id], onDelete: Cascade) + expenseDate DateTime @default(dbgenerated("CURRENT_DATE")) @db.Date title String - category Category? @relation(fields: [categoryId], references: [id]) - categoryId Int @default(0) + category Category? @relation(fields: [categoryId], references: [id]) + categoryId Int @default(0) amount Int - paidBy Participant @relation(fields: [paidById], references: [id], onDelete: Cascade) + paidBy Participant @relation(fields: [paidById], references: [id], onDelete: Cascade) paidById String paidFor ExpensePaidFor[] groupId String - isReimbursement Boolean @default(false) - splitMode SplitMode @default(EVENLY) - createdAt DateTime @default(now()) + isReimbursement Boolean @default(false) + splitMode SplitMode @default(EVENLY) + createdAt DateTime @default(now()) + documents ExpenseDocument[] +} + +model ExpenseDocument { + id String @id + url String + width Int + height Int + Expense Expense? @relation(fields: [expenseId], references: [id]) + expenseId String? } enum SplitMode { -- cgit v1.3