// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema

// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?
// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init

generator client {
  provider = "prisma-client-js"
  binaryTargets   = ["native", "linux-musl-arm64-openssl-3.0.x"] 
}

datasource db {
  provider = "mysql"
  url      = env("DATABASE_URL")
}

model Folder {
  id          Int          @id @default(autoincrement())
  name        String       @unique
  parentId    Int? 
  poster      String
  collections Collection[] @relation("FolderToCollection")
  folders     Folder[]     @relation("ChildFolders")
  parent      Folder?      @relation("ChildFolders", fields: [parentId], references: [id])
  createdAt   DateTime     @default(now())
  updatedAt   DateTime     @updatedAt
}

model Collection {
  id           Int      @id @default(autoincrement())
  name         String   @unique
  parentId     Int?
  code         String
  fault        String
  faultReason  String
  faultType    String
  faultFn      String
  faultMessage String
  faultJudge   String
  folder       Folder?   @relation("FolderToCollection", fields: [parentId], references: [id])
  createdAt    DateTime @default(now())
  updatedAt    DateTime @updatedAt
}