mirror of
https://github.com/ZeroCatDev/ClassworksKV.git
synced 2026-03-05 05:03:10 +00:00
fix: remove outdated migration files and update schema for consistency
This commit is contained in:
parent
9c8da8091c
commit
3d6679a7c2
@ -20,7 +20,7 @@ const config: runtime.GetPrismaClientConfig = {
|
|||||||
"clientVersion": "7.3.0",
|
"clientVersion": "7.3.0",
|
||||||
"engineVersion": "9d6ad21cbbceab97458517b147a6a09ff43aa735",
|
"engineVersion": "9d6ad21cbbceab97458517b147a6a09ff43aa735",
|
||||||
"activeProvider": "postgresql",
|
"activeProvider": "postgresql",
|
||||||
"inlineSchema": "generator client {\n provider = \"prisma-client\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n}\n\nmodel Account {\n id String @id(map: \"idx_18303_PRIMARY\") @default(cuid()) @db.VarChar(191)\n provider String @db.VarChar(191)\n providerId String @db.VarChar(191)\n email String? @db.VarChar(191)\n name String? @db.VarChar(191)\n avatarUrl String? @db.VarChar(191)\n providerData Json? @db.Json\n accessToken String?\n createdAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n refreshToken String?\n refreshTokenExpiry DateTime? @db.Timestamptz(6)\n tokenVersion Int @default(1)\n\n devices Device[]\n\n @@unique([provider, providerId], map: \"idx_18303_Account_provider_providerId_key\")\n}\n\nmodel AppInstall {\n id String @id(map: \"idx_18310_PRIMARY\") @default(cuid()) @db.VarChar(191)\n deviceId Int\n appId String @db.VarChar(191)\n token String @unique(map: \"idx_18310_AppInstall_token_key\") @db.VarChar(191)\n note String? @db.VarChar(191)\n installedAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n deviceType String? @db.VarChar(191)\n isReadOnly Boolean @default(false)\n\n device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n\n @@index([deviceId], map: \"idx_18310_AppInstall_deviceId_fkey\")\n}\n\nmodel AutoAuth {\n id String @id(map: \"idx_18317_PRIMARY\") @default(cuid()) @db.VarChar(191)\n deviceId Int\n password String? @db.VarChar(191)\n deviceType String? @db.VarChar(191)\n isReadOnly Boolean @default(false)\n createdAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n\n device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n\n @@unique([deviceId, password], map: \"idx_18317_AutoAuth_deviceId_password_key\")\n}\n\nmodel Device {\n id Int @id(map: \"idx_18324_PRIMARY\") @default(autoincrement())\n uuid String @unique(map: \"idx_18324_Device_uuid_key\") @db.VarChar(191)\n name String? @db.VarChar(191)\n accountId String? @db.VarChar(191)\n createdAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n password String? @db.VarChar(191)\n passwordHint String? @db.VarChar(191)\n namespace String? @unique(map: \"idx_18324_Device_namespace_key\") @db.VarChar(191)\n\n // 关联关系\n account Account? @relation(fields: [accountId], references: [id], onDelete: SetNull)\n appInstalls AppInstall[]\n kvStore KVStore[] // 设备相关的KV存储\n autoAuths AutoAuth[] // 自动授权配置\n\n @@index([accountId], map: \"idx_18324_Device_accountId_fkey\")\n}\n\nmodel KVStore {\n deviceId Int\n key String @db.VarChar(191)\n value Json @db.Json\n creatorIp String? @default(\"\") @db.VarChar(191)\n createdAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n\n device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n\n @@id([deviceId, key], map: \"idx_18330_PRIMARY\")\n}\n",
|
"inlineSchema": "generator client {\n provider = \"prisma-client\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n relationMode = \"prisma\"\n}\n\nmodel Account {\n id String @id @default(cuid()) @db.VarChar(191)\n provider String @db.VarChar(191)\n providerId String @db.VarChar(191)\n email String? @db.VarChar(191)\n name String? @db.VarChar(191)\n avatarUrl String? @db.VarChar(191)\n providerData Json? @db.Json\n accessToken String?\n createdAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n refreshToken String?\n refreshTokenExpiry DateTime? @db.Timestamptz(6)\n tokenVersion Int @default(1)\n\n devices Device[]\n\n @@unique([provider, providerId])\n}\n\nmodel AppInstall {\n id String @id @default(cuid()) @db.VarChar(191)\n deviceId Int\n appId String @db.VarChar(191)\n token String @unique @db.VarChar(191)\n note String? @db.VarChar(191)\n installedAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n deviceType String? @db.VarChar(191)\n isReadOnly Boolean @default(false)\n\n device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n\n @@index([deviceId])\n}\n\nmodel AutoAuth {\n id String @id @default(cuid()) @db.VarChar(191)\n deviceId Int\n password String? @db.VarChar(191)\n deviceType String? @db.VarChar(191)\n isReadOnly Boolean @default(false)\n createdAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n\n device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n\n @@unique([deviceId, password])\n}\n\nmodel Device {\n id Int @id @default(autoincrement())\n uuid String @unique @db.VarChar(191)\n name String? @db.VarChar(191)\n accountId String? @db.VarChar(191)\n createdAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n password String? @db.VarChar(191)\n passwordHint String? @db.VarChar(191)\n namespace String? @unique @db.VarChar(191)\n\n // 关联关系\n account Account? @relation(fields: [accountId], references: [id], onDelete: SetNull)\n appInstalls AppInstall[]\n kvStore KVStore[] // 设备相关的KV存储\n autoAuths AutoAuth[] // 自动授权配置\n\n @@index([accountId])\n}\n\nmodel KVStore {\n deviceId Int\n key String @db.VarChar(191)\n value Json @db.Json\n creatorIp String? @default(\"\") @db.VarChar(191)\n createdAt DateTime @default(now()) @db.Timestamptz(6)\n updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)\n\n device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n\n @@id([deviceId, key])\n}\n",
|
||||||
"runtimeDataModel": {
|
"runtimeDataModel": {
|
||||||
"models": {},
|
"models": {},
|
||||||
"enums": {},
|
"enums": {},
|
||||||
|
|||||||
@ -1,110 +0,0 @@
|
|||||||
-- CreateSchema
|
|
||||||
CREATE SCHEMA IF NOT EXISTS "public";
|
|
||||||
|
|
||||||
-- CreateTable
|
|
||||||
CREATE TABLE "Account" (
|
|
||||||
"id" VARCHAR(191) NOT NULL,
|
|
||||||
"provider" VARCHAR(191) NOT NULL,
|
|
||||||
"providerId" VARCHAR(191) NOT NULL,
|
|
||||||
"email" VARCHAR(191),
|
|
||||||
"name" VARCHAR(191),
|
|
||||||
"avatarUrl" VARCHAR(191),
|
|
||||||
"providerData" JSON,
|
|
||||||
"accessToken" TEXT,
|
|
||||||
"createdAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
"updatedAt" TIMESTAMPTZ(6) NOT NULL,
|
|
||||||
"refreshToken" TEXT,
|
|
||||||
"refreshTokenExpiry" TIMESTAMPTZ(6),
|
|
||||||
"tokenVersion" INTEGER NOT NULL DEFAULT 1,
|
|
||||||
|
|
||||||
CONSTRAINT "idx_18303_PRIMARY" PRIMARY KEY ("id")
|
|
||||||
);
|
|
||||||
|
|
||||||
-- CreateTable
|
|
||||||
CREATE TABLE "AppInstall" (
|
|
||||||
"id" VARCHAR(191) NOT NULL,
|
|
||||||
"deviceId" INTEGER NOT NULL,
|
|
||||||
"appId" VARCHAR(191) NOT NULL,
|
|
||||||
"token" VARCHAR(191) NOT NULL,
|
|
||||||
"note" VARCHAR(191),
|
|
||||||
"installedAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
"updatedAt" TIMESTAMPTZ(6) NOT NULL,
|
|
||||||
"deviceType" VARCHAR(191),
|
|
||||||
"isReadOnly" BOOLEAN NOT NULL DEFAULT false,
|
|
||||||
|
|
||||||
CONSTRAINT "idx_18310_PRIMARY" PRIMARY KEY ("id")
|
|
||||||
);
|
|
||||||
|
|
||||||
-- CreateTable
|
|
||||||
CREATE TABLE "AutoAuth" (
|
|
||||||
"id" VARCHAR(191) NOT NULL,
|
|
||||||
"deviceId" INTEGER NOT NULL,
|
|
||||||
"password" VARCHAR(191),
|
|
||||||
"deviceType" VARCHAR(191),
|
|
||||||
"isReadOnly" BOOLEAN NOT NULL DEFAULT false,
|
|
||||||
"createdAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
"updatedAt" TIMESTAMPTZ(6) NOT NULL,
|
|
||||||
|
|
||||||
CONSTRAINT "idx_18317_PRIMARY" PRIMARY KEY ("id")
|
|
||||||
);
|
|
||||||
|
|
||||||
-- CreateTable
|
|
||||||
CREATE TABLE "Device" (
|
|
||||||
"id" INTEGER NOT NULL,
|
|
||||||
"uuid" VARCHAR(191) NOT NULL,
|
|
||||||
"name" VARCHAR(191),
|
|
||||||
"accountId" VARCHAR(191),
|
|
||||||
"createdAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
"updatedAt" TIMESTAMPTZ(6) NOT NULL,
|
|
||||||
"password" VARCHAR(191),
|
|
||||||
"passwordHint" VARCHAR(191),
|
|
||||||
"namespace" VARCHAR(191),
|
|
||||||
|
|
||||||
CONSTRAINT "idx_18324_PRIMARY" PRIMARY KEY ("id")
|
|
||||||
);
|
|
||||||
|
|
||||||
-- CreateTable
|
|
||||||
CREATE TABLE "KVStore" (
|
|
||||||
"deviceId" INTEGER NOT NULL,
|
|
||||||
"key" VARCHAR(191) NOT NULL,
|
|
||||||
"value" JSON NOT NULL,
|
|
||||||
"creatorIp" VARCHAR(191) DEFAULT '',
|
|
||||||
"createdAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
"updatedAt" TIMESTAMPTZ(6) NOT NULL,
|
|
||||||
|
|
||||||
CONSTRAINT "idx_18330_PRIMARY" PRIMARY KEY ("deviceId","key")
|
|
||||||
);
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX "idx_18303_Account_provider_providerId_key" ON "Account"("provider", "providerId");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX "idx_18310_AppInstall_token_key" ON "AppInstall"("token");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE INDEX "idx_18310_AppInstall_deviceId_fkey" ON "AppInstall"("deviceId");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX "idx_18317_AutoAuth_deviceId_password_key" ON "AutoAuth"("deviceId", "password");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX "idx_18324_Device_uuid_key" ON "Device"("uuid");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX "idx_18324_Device_namespace_key" ON "Device"("namespace");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE INDEX "idx_18324_Device_accountId_fkey" ON "Device"("accountId");
|
|
||||||
|
|
||||||
-- AddForeignKey
|
|
||||||
ALTER TABLE "AppInstall" ADD CONSTRAINT "AppInstall_deviceId_fkey" FOREIGN KEY ("deviceId") REFERENCES "Device"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
||||||
|
|
||||||
-- AddForeignKey
|
|
||||||
ALTER TABLE "AutoAuth" ADD CONSTRAINT "AutoAuth_deviceId_fkey" FOREIGN KEY ("deviceId") REFERENCES "Device"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
||||||
|
|
||||||
-- AddForeignKey
|
|
||||||
ALTER TABLE "Device" ADD CONSTRAINT "Device_accountId_fkey" FOREIGN KEY ("accountId") REFERENCES "Account"("id") ON DELETE SET NULL ON UPDATE CASCADE;
|
|
||||||
|
|
||||||
-- AddForeignKey
|
|
||||||
ALTER TABLE "KVStore" ADD CONSTRAINT "KVStore_deviceId_fkey" FOREIGN KEY ("deviceId") REFERENCES "Device"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
||||||
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
-- AlterTable
|
|
||||||
ALTER TABLE "Account" ALTER COLUMN "updatedAt" SET DEFAULT CURRENT_TIMESTAMP;
|
|
||||||
|
|
||||||
-- AlterTable
|
|
||||||
ALTER TABLE "AppInstall" ALTER COLUMN "updatedAt" SET DEFAULT CURRENT_TIMESTAMP;
|
|
||||||
|
|
||||||
-- AlterTable
|
|
||||||
ALTER TABLE "AutoAuth" ALTER COLUMN "updatedAt" SET DEFAULT CURRENT_TIMESTAMP;
|
|
||||||
|
|
||||||
-- AlterTable
|
|
||||||
ALTER TABLE "Device" ALTER COLUMN "updatedAt" SET DEFAULT CURRENT_TIMESTAMP;
|
|
||||||
|
|
||||||
-- AlterTable
|
|
||||||
ALTER TABLE "KVStore" ALTER COLUMN "updatedAt" SET DEFAULT CURRENT_TIMESTAMP;
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
-- AlterTable
|
|
||||||
CREATE SEQUENCE device_id_seq;
|
|
||||||
ALTER TABLE "Device" ALTER COLUMN "id" SET DEFAULT nextval('device_id_seq');
|
|
||||||
ALTER SEQUENCE device_id_seq OWNED BY "Device"."id";
|
|
||||||
94
prisma/migrations/20260209032205_init/migration.sql
Normal file
94
prisma/migrations/20260209032205_init/migration.sql
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
-- CreateTable
|
||||||
|
CREATE TABLE "Account" (
|
||||||
|
"id" VARCHAR(191) NOT NULL,
|
||||||
|
"provider" VARCHAR(191) NOT NULL,
|
||||||
|
"providerId" VARCHAR(191) NOT NULL,
|
||||||
|
"email" VARCHAR(191),
|
||||||
|
"name" VARCHAR(191),
|
||||||
|
"avatarUrl" VARCHAR(191),
|
||||||
|
"providerData" JSON,
|
||||||
|
"accessToken" TEXT,
|
||||||
|
"createdAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"updatedAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"refreshToken" TEXT,
|
||||||
|
"refreshTokenExpiry" TIMESTAMPTZ(6),
|
||||||
|
"tokenVersion" INTEGER NOT NULL DEFAULT 1,
|
||||||
|
|
||||||
|
CONSTRAINT "Account_pkey" PRIMARY KEY ("id")
|
||||||
|
);
|
||||||
|
|
||||||
|
-- CreateTable
|
||||||
|
CREATE TABLE "AppInstall" (
|
||||||
|
"id" VARCHAR(191) NOT NULL,
|
||||||
|
"deviceId" INTEGER NOT NULL,
|
||||||
|
"appId" VARCHAR(191) NOT NULL,
|
||||||
|
"token" VARCHAR(191) NOT NULL,
|
||||||
|
"note" VARCHAR(191),
|
||||||
|
"installedAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"updatedAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"deviceType" VARCHAR(191),
|
||||||
|
"isReadOnly" BOOLEAN NOT NULL DEFAULT false,
|
||||||
|
|
||||||
|
CONSTRAINT "AppInstall_pkey" PRIMARY KEY ("id")
|
||||||
|
);
|
||||||
|
|
||||||
|
-- CreateTable
|
||||||
|
CREATE TABLE "AutoAuth" (
|
||||||
|
"id" VARCHAR(191) NOT NULL,
|
||||||
|
"deviceId" INTEGER NOT NULL,
|
||||||
|
"password" VARCHAR(191),
|
||||||
|
"deviceType" VARCHAR(191),
|
||||||
|
"isReadOnly" BOOLEAN NOT NULL DEFAULT false,
|
||||||
|
"createdAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"updatedAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
|
||||||
|
CONSTRAINT "AutoAuth_pkey" PRIMARY KEY ("id")
|
||||||
|
);
|
||||||
|
|
||||||
|
-- CreateTable
|
||||||
|
CREATE TABLE "Device" (
|
||||||
|
"id" SERIAL NOT NULL,
|
||||||
|
"uuid" VARCHAR(191) NOT NULL,
|
||||||
|
"name" VARCHAR(191),
|
||||||
|
"accountId" VARCHAR(191),
|
||||||
|
"createdAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"updatedAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"password" VARCHAR(191),
|
||||||
|
"passwordHint" VARCHAR(191),
|
||||||
|
"namespace" VARCHAR(191),
|
||||||
|
|
||||||
|
CONSTRAINT "Device_pkey" PRIMARY KEY ("id")
|
||||||
|
);
|
||||||
|
|
||||||
|
-- CreateTable
|
||||||
|
CREATE TABLE "KVStore" (
|
||||||
|
"deviceId" INTEGER NOT NULL,
|
||||||
|
"key" VARCHAR(191) NOT NULL,
|
||||||
|
"value" JSON NOT NULL,
|
||||||
|
"creatorIp" VARCHAR(191) DEFAULT '',
|
||||||
|
"createdAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"updatedAt" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
|
||||||
|
CONSTRAINT "KVStore_pkey" PRIMARY KEY ("deviceId","key")
|
||||||
|
);
|
||||||
|
|
||||||
|
-- CreateIndex
|
||||||
|
CREATE UNIQUE INDEX "Account_provider_providerId_key" ON "Account"("provider", "providerId");
|
||||||
|
|
||||||
|
-- CreateIndex
|
||||||
|
CREATE UNIQUE INDEX "AppInstall_token_key" ON "AppInstall"("token");
|
||||||
|
|
||||||
|
-- CreateIndex
|
||||||
|
CREATE INDEX "AppInstall_deviceId_idx" ON "AppInstall"("deviceId");
|
||||||
|
|
||||||
|
-- CreateIndex
|
||||||
|
CREATE UNIQUE INDEX "AutoAuth_deviceId_password_key" ON "AutoAuth"("deviceId", "password");
|
||||||
|
|
||||||
|
-- CreateIndex
|
||||||
|
CREATE UNIQUE INDEX "Device_uuid_key" ON "Device"("uuid");
|
||||||
|
|
||||||
|
-- CreateIndex
|
||||||
|
CREATE UNIQUE INDEX "Device_namespace_key" ON "Device"("namespace");
|
||||||
|
|
||||||
|
-- CreateIndex
|
||||||
|
CREATE INDEX "Device_accountId_idx" ON "Device"("accountId");
|
||||||
@ -5,10 +5,11 @@ generator client {
|
|||||||
|
|
||||||
datasource db {
|
datasource db {
|
||||||
provider = "postgresql"
|
provider = "postgresql"
|
||||||
|
relationMode = "prisma"
|
||||||
}
|
}
|
||||||
|
|
||||||
model Account {
|
model Account {
|
||||||
id String @id(map: "idx_18303_PRIMARY") @db.VarChar(191) @default(cuid())
|
id String @id @db.VarChar(191) @default(cuid())
|
||||||
provider String @db.VarChar(191)
|
provider String @db.VarChar(191)
|
||||||
providerId String @db.VarChar(191)
|
providerId String @db.VarChar(191)
|
||||||
email String? @db.VarChar(191)
|
email String? @db.VarChar(191)
|
||||||
@ -24,14 +25,14 @@ model Account {
|
|||||||
|
|
||||||
devices Device[]
|
devices Device[]
|
||||||
|
|
||||||
@@unique([provider, providerId], map: "idx_18303_Account_provider_providerId_key")
|
@@unique([provider, providerId])
|
||||||
}
|
}
|
||||||
|
|
||||||
model AppInstall {
|
model AppInstall {
|
||||||
id String @id(map: "idx_18310_PRIMARY") @default(cuid()) @db.VarChar(191)
|
id String @id @default(cuid()) @db.VarChar(191)
|
||||||
deviceId Int
|
deviceId Int
|
||||||
appId String @db.VarChar(191)
|
appId String @db.VarChar(191)
|
||||||
token String @unique(map: "idx_18310_AppInstall_token_key") @db.VarChar(191)
|
token String @unique @db.VarChar(191)
|
||||||
note String? @db.VarChar(191)
|
note String? @db.VarChar(191)
|
||||||
installedAt DateTime @default(now()) @db.Timestamptz(6)
|
installedAt DateTime @default(now()) @db.Timestamptz(6)
|
||||||
updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)
|
updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)
|
||||||
@ -40,11 +41,11 @@ model AppInstall {
|
|||||||
|
|
||||||
device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)
|
device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)
|
||||||
|
|
||||||
@@index([deviceId], map: "idx_18310_AppInstall_deviceId_fkey")
|
@@index([deviceId])
|
||||||
}
|
}
|
||||||
|
|
||||||
model AutoAuth {
|
model AutoAuth {
|
||||||
id String @id(map: "idx_18317_PRIMARY") @default(cuid()) @db.VarChar(191)
|
id String @id @default(cuid()) @db.VarChar(191)
|
||||||
deviceId Int
|
deviceId Int
|
||||||
password String? @db.VarChar(191)
|
password String? @db.VarChar(191)
|
||||||
deviceType String? @db.VarChar(191)
|
deviceType String? @db.VarChar(191)
|
||||||
@ -54,26 +55,26 @@ model AutoAuth {
|
|||||||
|
|
||||||
device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)
|
device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)
|
||||||
|
|
||||||
@@unique([deviceId, password], map: "idx_18317_AutoAuth_deviceId_password_key")
|
@@unique([deviceId, password])
|
||||||
}
|
}
|
||||||
|
|
||||||
model Device {
|
model Device {
|
||||||
id Int @id(map: "idx_18324_PRIMARY") @default(autoincrement())
|
id Int @id @default(autoincrement())
|
||||||
uuid String @unique(map: "idx_18324_Device_uuid_key") @db.VarChar(191)
|
uuid String @unique @db.VarChar(191)
|
||||||
name String? @db.VarChar(191)
|
name String? @db.VarChar(191)
|
||||||
accountId String? @db.VarChar(191)
|
accountId String? @db.VarChar(191)
|
||||||
createdAt DateTime @default(now()) @db.Timestamptz(6)
|
createdAt DateTime @default(now()) @db.Timestamptz(6)
|
||||||
updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)
|
updatedAt DateTime @default(now()) @updatedAt @db.Timestamptz(6)
|
||||||
password String? @db.VarChar(191)
|
password String? @db.VarChar(191)
|
||||||
passwordHint String? @db.VarChar(191)
|
passwordHint String? @db.VarChar(191)
|
||||||
namespace String? @unique(map: "idx_18324_Device_namespace_key") @db.VarChar(191)
|
namespace String? @unique @db.VarChar(191)
|
||||||
|
|
||||||
// 关联关系
|
// 关联关系
|
||||||
account Account? @relation(fields: [accountId], references: [id], onDelete: SetNull)
|
account Account? @relation(fields: [accountId], references: [id], onDelete: SetNull)
|
||||||
appInstalls AppInstall[]
|
appInstalls AppInstall[]
|
||||||
kvStore KVStore[] // 设备相关的KV存储
|
kvStore KVStore[] // 设备相关的KV存储
|
||||||
autoAuths AutoAuth[] // 自动授权配置
|
autoAuths AutoAuth[] // 自动授权配置
|
||||||
@@index([accountId], map: "idx_18324_Device_accountId_fkey")
|
@@index([accountId])
|
||||||
}
|
}
|
||||||
|
|
||||||
model KVStore {
|
model KVStore {
|
||||||
@ -86,5 +87,5 @@ model KVStore {
|
|||||||
|
|
||||||
device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)
|
device Device @relation(fields: [deviceId], references: [id], onDelete: Cascade)
|
||||||
|
|
||||||
@@id([deviceId, key], map: "idx_18330_PRIMARY")
|
@@id([deviceId, key])
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user