Files
api/prisma/migrations_sqlite_archive/20260727160000_server_accounts/migration.sql
T

48 lines
1.7 KiB
SQL

-- CreateTable
CREATE TABLE "server_accounts" (
"id" TEXT NOT NULL PRIMARY KEY,
"tenant_id" TEXT NOT NULL,
"is_dedicated" BOOLEAN NOT NULL DEFAULT false,
"server_name" TEXT,
"specs" TEXT,
"price_rials" INTEGER,
"charged_at" DATETIME,
"plan_months" INTEGER,
"expires_at" DATETIME,
"description" TEXT,
"alert_days_before" INTEGER NOT NULL DEFAULT 3,
"last_alert_date" DATETIME,
"created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" DATETIME NOT NULL,
CONSTRAINT "server_accounts_tenant_id_fkey" FOREIGN KEY ("tenant_id") REFERENCES "tenants" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
-- CreateTable
CREATE TABLE "server_charges" (
"id" TEXT NOT NULL PRIMARY KEY,
"server_account_id" TEXT NOT NULL,
"charged_at" DATETIME NOT NULL,
"plan_months" INTEGER NOT NULL,
"price_rials" INTEGER NOT NULL,
"expires_at" DATETIME NOT NULL,
"note" TEXT,
"created_by_id" TEXT,
"created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "server_charges_server_account_id_fkey" FOREIGN KEY ("server_account_id") REFERENCES "server_accounts" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
-- CreateIndex
CREATE UNIQUE INDEX "server_accounts_tenant_id_key" ON "server_accounts"("tenant_id");
-- CreateIndex
CREATE INDEX "server_accounts_expires_at_idx" ON "server_accounts"("expires_at");
-- CreateIndex
CREATE INDEX "server_accounts_is_dedicated_idx" ON "server_accounts"("is_dedicated");
-- CreateIndex
CREATE INDEX "server_charges_server_account_id_idx" ON "server_charges"("server_account_id");
-- CreateIndex
CREATE INDEX "server_charges_created_at_idx" ON "server_charges"("created_at");