first commit

This commit is contained in:
qwer-xyz
2026-06-20 14:22:31 +08:00
commit c2498911ab
793 changed files with 291660 additions and 0 deletions
@@ -0,0 +1,52 @@
-- CreateEnum
CREATE TYPE "TrafficStatus" AS ENUM ('NORMAL', 'WARNING', 'LIMITED');
-- AlterTable
ALTER TABLE "instances" ADD COLUMN "monthly_traffic_limit" BIGINT,
ADD COLUMN "monthly_traffic_used" BIGINT NOT NULL DEFAULT 0,
ADD COLUMN "traffic_status" "TrafficStatus" NOT NULL DEFAULT 'NORMAL';
-- AlterTable
ALTER TABLE "user_quotas" ADD COLUMN "extra_traffic_quota" BIGINT NOT NULL DEFAULT 0,
ADD COLUMN "extra_traffic_used" BIGINT NOT NULL DEFAULT 0,
ADD COLUMN "monthly_traffic_limit" BIGINT,
ADD COLUMN "monthly_traffic_used" BIGINT NOT NULL DEFAULT 0,
ADD COLUMN "traffic_status" "TrafficStatus" NOT NULL DEFAULT 'NORMAL',
ADD COLUMN "traffic_warning_sent_at" TIMESTAMP(3);
-- CreateTable
CREATE TABLE "traffic_snapshots" (
"id" SERIAL NOT NULL,
"instance_id" INTEGER NOT NULL,
"rx_raw" BIGINT NOT NULL,
"tx_raw" BIGINT NOT NULL,
"updated_at" TIMESTAMP(3) NOT NULL,
CONSTRAINT "traffic_snapshots_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "daily_traffic" (
"id" SERIAL NOT NULL,
"instance_id" INTEGER NOT NULL,
"date" DATE NOT NULL,
"rx_total" BIGINT NOT NULL,
"tx_total" BIGINT NOT NULL,
CONSTRAINT "daily_traffic_pkey" PRIMARY KEY ("id")
);
-- CreateIndex
CREATE UNIQUE INDEX "traffic_snapshots_instance_id_key" ON "traffic_snapshots"("instance_id");
-- CreateIndex
CREATE INDEX "daily_traffic_instance_id_date_idx" ON "daily_traffic"("instance_id", "date");
-- CreateIndex
CREATE UNIQUE INDEX "daily_traffic_instance_id_date_key" ON "daily_traffic"("instance_id", "date");
-- AddForeignKey
ALTER TABLE "traffic_snapshots" ADD CONSTRAINT "traffic_snapshots_instance_id_fkey" FOREIGN KEY ("instance_id") REFERENCES "instances"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "daily_traffic" ADD CONSTRAINT "daily_traffic_instance_id_fkey" FOREIGN KEY ("instance_id") REFERENCES "instances"("id") ON DELETE CASCADE ON UPDATE CASCADE;