summaryrefslogtreecommitdiffstats
path: root/backend/prisma/datamodel.graphql
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-05-22 09:33:29 -0400
committerGitHub <noreply@github.com>2018-05-22 09:33:29 -0400
commit176b6e1b0c2133a28e65953e1f710bc265b9c971 (patch)
tree34e7560276d0b32aa09b406b6566415f67125c1d /backend/prisma/datamodel.graphql
parent51f593384f1325b78a263d0d870d162236ed28d2 (diff)
parent6e617cbcb456bd0316392d53550e9b34de16001a (diff)
Merge pull request #6 from wesbos/prisma
WIP: Updated Prisma related setup/code
Diffstat (limited to 'backend/prisma/datamodel.graphql')
-rw-r--r--backend/prisma/datamodel.graphql67
1 files changed, 67 insertions, 0 deletions
diff --git a/backend/prisma/datamodel.graphql b/backend/prisma/datamodel.graphql
new file mode 100644
index 0000000..9465524
--- /dev/null
+++ b/backend/prisma/datamodel.graphql
@@ -0,0 +1,67 @@
+enum Permission {
+ ADMIN
+ USER
+ ITEMCREATE
+ ITEMUPDATE
+ ITEMDELETE
+ PERMISSIONUPDATE
+}
+
+type User {
+ id: ID! @unique
+ email: String! @unique
+ password: String!
+ name: String!
+ orders: [Order!]!
+ resetToken: String
+ resetTokenExpiry: String
+ cart: [CartItem!]!
+ createdAt: DateTime!
+ updatedAt: DateTime!
+ permissions: [Permission!]!
+}
+
+type CartItem {
+ id: ID! @unique
+ quantity: Int! @default(value: 1)
+ item: Item # Relationship to an Item
+ user: User! # Relationship to a user
+ createdAt: DateTime!
+ updatedAt: DateTime!
+}
+
+type Item {
+ id: ID! @unique
+ title: String!
+ description: String!
+ image: String
+ largeImage: String
+ price: Int!
+ createdAt: DateTime!
+ updatedAt: DateTime!
+ user: User! # Relationship to a user
+}
+
+type OrderItem {
+ id: ID! @unique
+ title: String!
+ description: String!
+ image: String
+ largeImage: String
+ price: Int!
+ createdAt: DateTime!
+ updatedAt: DateTime!
+ quantity: Int! @default(value: 1)
+ item: Item! # Relationship to an Item
+ user: User! # Relationship to a user
+}
+
+type Order {
+ id: ID! @unique
+ items: [OrderItem!]!
+ total: Int!
+ user: User!
+ createdAt: DateTime!
+ updatedAt: DateTime!
+ charge: String!
+} \ No newline at end of file