boardgame-lib / prisma / schema.prisma
schema.prisma
Raw
// 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 = "sqlite"
  url      = env("DATABASE_URL")
}

model Games {
  id         Int         @id @default(autoincrement())
  title      String
  barcode    String
  image      String
  ownedCount Int
  categoryId Int?
  category   Categories? @relation(fields: [categoryId], references: [id])
  const      String
  condition  String?

  dateAdded   DateTime
  lastUpdated DateTime

  loans LoanedGames[]
}

model LoanedGames {
  id          Int    @id @default(autoincrement())
  reference   String
  description String
  gameId      Int
  posessorId  Int

  posessor LoanerDetails @relation(fields: [posessorId], references: [id])
  game     Games         @relation(fields: [gameId], references: [id])

  dateLoaned   DateTime  @default(now())
  dateReturned DateTime?
}

model LoanerDetails {
  id          Int     @id @default(autoincrement())
  name        String
  email       String?
  phoneNumber String?
  notes       String?

  LoanedGames LoanedGames[]
}

model Categories {
  id    Int     @id @default(autoincrement())
  name  String
  Games Games[]
}