update hq db schema, add form overview page

This commit is contained in:
Matthias Nannt
2022-11-29 15:34:55 +01:00
parent ec695df017
commit a977cc403b
17 changed files with 387 additions and 117 deletions
@@ -9,12 +9,12 @@ CREATE TYPE "IdentityProvider" AS ENUM ('EMAIL', 'GITHUB');
-- CreateTable
CREATE TABLE "Pipeline" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"name" TEXT NOT NULL,
"type" "PipelineType" NOT NULL,
"formId" INTEGER NOT NULL,
"formId" TEXT NOT NULL,
"enabled" BOOLEAN NOT NULL DEFAULT false,
"config" JSONB NOT NULL DEFAULT '{}',
@@ -26,7 +26,7 @@ CREATE TABLE "Customer" (
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"teamId" INTEGER NOT NULL,
"teamId" TEXT NOT NULL,
"data" JSONB NOT NULL DEFAULT '{}',
CONSTRAINT "Customer_pkey" PRIMARY KEY ("id","teamId")
@@ -34,11 +34,11 @@ CREATE TABLE "Customer" (
-- CreateTable
CREATE TABLE "Form" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"label" TEXT NOT NULL,
"teamId" INTEGER NOT NULL,
"teamId" TEXT NOT NULL,
"schema" JSONB NOT NULL DEFAULT '{}',
CONSTRAINT "Form_pkey" PRIMARY KEY ("id")
@@ -46,12 +46,12 @@ CREATE TABLE "Form" (
-- CreateTable
CREATE TABLE "Submission" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"formId" INTEGER NOT NULL,
"formId" TEXT NOT NULL,
"customerId" TEXT,
"teamId" INTEGER,
"teamId" TEXT,
"data" JSONB NOT NULL DEFAULT '{}',
CONSTRAINT "Submission_pkey" PRIMARY KEY ("id")
@@ -59,7 +59,7 @@ CREATE TABLE "Submission" (
-- CreateTable
CREATE TABLE "Team" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"name" TEXT NOT NULL,
@@ -69,8 +69,8 @@ CREATE TABLE "Team" (
-- CreateTable
CREATE TABLE "Membership" (
"teamId" INTEGER NOT NULL,
"userId" INTEGER NOT NULL,
"teamId" TEXT NOT NULL,
"userId" TEXT NOT NULL,
"accepted" BOOLEAN NOT NULL DEFAULT false,
"role" "MembershipRole" NOT NULL,
@@ -79,22 +79,22 @@ CREATE TABLE "Membership" (
-- CreateTable
CREATE TABLE "ApiKey" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"lastUsedAt" TIMESTAMP(3),
"label" TEXT,
"hashedKey" TEXT NOT NULL,
"userId" INTEGER NOT NULL,
"userId" TEXT NOT NULL,
CONSTRAINT "ApiKey_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "Account" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"userId" INTEGER NOT NULL,
"userId" TEXT NOT NULL,
"type" TEXT NOT NULL,
"provider" TEXT NOT NULL,
"providerAccountId" TEXT NOT NULL,
@@ -111,7 +111,7 @@ CREATE TABLE "Account" (
-- CreateTable
CREATE TABLE "User" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"name" TEXT,
+16 -16
View File
@@ -18,13 +18,13 @@ enum PipelineType {
}
model Pipeline {
id Int @id @default(autoincrement())
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
name String
type PipelineType
form Form @relation(fields: [formId], references: [id], onDelete: Cascade)
formId Int
formId String
enabled Boolean @default(false)
config Json @default("{}")
}
@@ -34,7 +34,7 @@ model Customer {
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
team Team @relation(fields: [teamId], references: [id], onDelete: Cascade)
teamId Int
teamId String
submissions Submission[]
data Json @default("{}")
@@ -42,31 +42,31 @@ model Customer {
}
model Form {
id Int @id @default(autoincrement())
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
label String
team Team @relation(fields: [teamId], references: [id], onDelete: Cascade)
teamId Int
teamId String
schema Json @default("{}")
submissions Submission[]
pipelines Pipeline[]
}
model Submission {
id Int @id @default(autoincrement())
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
form Form @relation(fields: [formId], references: [id], onDelete: Cascade)
formId Int
formId String
customer Customer? @relation(fields: [customerId, teamId], references: [id, teamId])
customerId String?
teamId Int?
teamId String?
data Json @default("{}")
}
model Team {
id Int @id @default(autoincrement())
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
name String
@@ -83,9 +83,9 @@ enum MembershipRole {
model Membership {
team Team @relation(fields: [teamId], references: [id], onDelete: Cascade)
teamId Int
teamId String
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
userId Int
userId String
accepted Boolean @default(false)
role MembershipRole
@@ -93,13 +93,13 @@ model Membership {
}
model ApiKey {
id Int @id @unique @default(autoincrement())
id String @id @unique @default(cuid())
createdAt DateTime @default(now())
lastUsedAt DateTime?
label String?
hashedKey String @unique()
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
userId Int
userId String
}
enum IdentityProvider {
@@ -108,11 +108,11 @@ enum IdentityProvider {
}
model Account {
id Int @id @default(autoincrement())
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
user User? @relation(fields: [userId], references: [id], onDelete: Cascade)
userId Int
userId String
type String
provider String
providerAccountId String
@@ -128,7 +128,7 @@ model Account {
}
model User {
id Int @id @default(autoincrement())
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
name String?