From 0ed9a65331b2baab58542057af8f7f3b49576bd0 Mon Sep 17 00:00:00 2001 From: Stone_Red <56473591+Stone-Red-Code@users.noreply.github.com> Date: Thu, 24 Feb 2022 15:23:35 +0100 Subject: [PATCH 1/3] Add broken prisma schema --- prisma/schema.prisma | 47 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 prisma/schema.prisma diff --git a/prisma/schema.prisma b/prisma/schema.prisma new file mode 100644 index 0000000..f1216c4 --- /dev/null +++ b/prisma/schema.prisma @@ -0,0 +1,47 @@ +// This is your Prisma schema file, +// learn more about it in the docs: https://pris.ly/d/prisma-schema + +generator client { + provider = "prisma-client-js" +} + +datasource db { + provider = "postgresql" + url = env("DATABASE_URL") +} + +model User { + id Int @id @default(autoincrement()) + email String @unique + role Role @default(USER) + orders Order[] +} + +model Restaurant { + id Int @id @default(autoincrement()) + name String @unique + description String? + pizzas Pizza[] +} + +model Pizza { + id Int @id @default(autoincrement()) + name String @unique + description String? + restaurant Restaurant @relation(fields: [restaurantId], references: [id]) + restaurantId Int +} + +model Order { + id Int @id @default(autoincrement()) + user User @relation(fields: [userId], references: [id]) + userId Int + pizza Pizza @relation(fields: [pizzaId], references: [id]) + pizzaId Int + amount Int +} + +enum Role { + USER + ADMIN +} From bacea5cfea41d03edb45ac8f44f1ce5d541b748a Mon Sep 17 00:00:00 2001 From: Stone_Red <56473591+Stone-Red-Code@users.noreply.github.com> Date: Fri, 25 Feb 2022 12:52:56 +0100 Subject: [PATCH 2/3] Fix prisma schema --- prisma/schema.prisma | 49 +++++++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/prisma/schema.prisma b/prisma/schema.prisma index f1216c4..c7431e5 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -11,37 +11,44 @@ datasource db { } model User { - id Int @id @default(autoincrement()) - email String @unique - role Role @default(USER) - orders Order[] + id Int @id @default(autoincrement()) + email String @unique + role Role @default(USER) + orders Order[] } model Restaurant { - id Int @id @default(autoincrement()) - name String @unique - description String? - pizzas Pizza[] + id Int @id @default(autoincrement()) + name String @unique + description String? + pizzas Pizza[] } model Pizza { - id Int @id @default(autoincrement()) - name String @unique - description String? - restaurant Restaurant @relation(fields: [restaurantId], references: [id]) - restaurantId Int + id Int @id @default(autoincrement()) + name String @unique + description String? + restaurant Restaurant @relation(fields: [restaurantId], references: [id]) + restaurantId Int + orders PizzatoOrder[] } model Order { - id Int @id @default(autoincrement()) - user User @relation(fields: [userId], references: [id]) - userId Int - pizza Pizza @relation(fields: [pizzaId], references: [id]) - pizzaId Int - amount Int + id Int @id @default(autoincrement()) + user User @relation(fields: [userId], references: [id]) + userId Int + pizzas PizzatoOrder[] +} + +model PizzatoOrder { + id Int @id @default(autoincrement()) + order Order @relation(fields: [orderId], references: [id]) + orderId Int + pizza Pizza @relation(fields: [pizzaId], references: [id]) + pizzaId Int } enum Role { - USER - ADMIN + USER + ADMIN } From cae5f6b9a1b36ed352b3373241f96d38f409c0e4 Mon Sep 17 00:00:00 2001 From: Stone_Red <56473591+Stone-Red-Code@users.noreply.github.com> Date: Fri, 25 Feb 2022 13:11:27 +0100 Subject: [PATCH 3/3] Update prisma schema - Add password fields - Add organization model --- prisma/schema.prisma | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/prisma/schema.prisma b/prisma/schema.prisma index c7431e5..e197618 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -11,10 +11,14 @@ datasource db { } model User { - id Int @id @default(autoincrement()) - email String @unique - role Role @default(USER) - orders Order[] + id Int @id @default(autoincrement()) + email String @unique + passwordHash String + passwordSalt String + role Role @default(USER) + organization Organization @relation(fields: [organizationId], references: [id]) + organizationId Int + orders Order[] } model Restaurant { @@ -30,17 +34,17 @@ model Pizza { description String? restaurant Restaurant @relation(fields: [restaurantId], references: [id]) restaurantId Int - orders PizzatoOrder[] + orders PizzaToOrder[] } model Order { id Int @id @default(autoincrement()) user User @relation(fields: [userId], references: [id]) userId Int - pizzas PizzatoOrder[] + pizzas PizzaToOrder[] } -model PizzatoOrder { +model PizzaToOrder { id Int @id @default(autoincrement()) order Order @relation(fields: [orderId], references: [id]) orderId Int @@ -48,6 +52,14 @@ model PizzatoOrder { pizzaId Int } +model Organization { + id Int @id @default(autoincrement()) + name String + domain String + users User[] + userId Int +} + enum Role { USER ADMIN