192 lines
6.8 KiB
SQL
192 lines
6.8 KiB
SQL
CREATE TABLE IF NOT EXISTS "__EFMigrationsHistory" (
|
|
"MigrationId" character varying(150) NOT NULL,
|
|
"ProductVersion" character varying(32) NOT NULL,
|
|
CONSTRAINT "PK___EFMigrationsHistory" PRIMARY KEY ("MigrationId")
|
|
);
|
|
|
|
START TRANSACTION;
|
|
CREATE TABLE "AccessLogs" (
|
|
"Id" bigint GENERATED BY DEFAULT AS IDENTITY,
|
|
"UserName" character varying(50),
|
|
"TenantId" character varying(50),
|
|
"Action" character varying(20) NOT NULL,
|
|
"Resource" character varying(200),
|
|
"Method" character varying(10),
|
|
"IpAddress" character varying(50),
|
|
"UserAgent" character varying(500),
|
|
"Status" character varying(20) NOT NULL,
|
|
"Duration" integer NOT NULL,
|
|
"RequestData" text,
|
|
"ResponseData" text,
|
|
"ErrorMessage" text,
|
|
"CreatedAt" timestamp with time zone NOT NULL,
|
|
CONSTRAINT "PK_AccessLogs" PRIMARY KEY ("Id")
|
|
);
|
|
|
|
CREATE TABLE "AspNetRoles" (
|
|
"Id" bigint GENERATED BY DEFAULT AS IDENTITY,
|
|
"Description" character varying(200),
|
|
"CreatedTime" timestamp with time zone NOT NULL,
|
|
"TenantId" bigint,
|
|
"IsSystem" boolean NOT NULL,
|
|
"DisplayName" text,
|
|
"Permissions" text[],
|
|
"Name" character varying(256),
|
|
"NormalizedName" character varying(256),
|
|
"ConcurrencyStamp" text,
|
|
CONSTRAINT "PK_AspNetRoles" PRIMARY KEY ("Id")
|
|
);
|
|
|
|
CREATE TABLE "AspNetUsers" (
|
|
"Id" bigint GENERATED BY DEFAULT AS IDENTITY,
|
|
"RealName" text NOT NULL,
|
|
"TenantId" bigint,
|
|
"TenantCode" text,
|
|
"TenantName" text,
|
|
"CreatedTime" timestamp with time zone NOT NULL,
|
|
"UpdatedTime" timestamp with time zone,
|
|
"IsDeleted" boolean NOT NULL,
|
|
"UserName" character varying(256),
|
|
"NormalizedUserName" character varying(256),
|
|
"Email" character varying(256),
|
|
"NormalizedEmail" character varying(256),
|
|
"EmailConfirmed" boolean NOT NULL,
|
|
"PasswordHash" text,
|
|
"SecurityStamp" text,
|
|
"ConcurrencyStamp" text,
|
|
"PhoneNumber" character varying(20),
|
|
"PhoneNumberConfirmed" boolean NOT NULL,
|
|
"TwoFactorEnabled" boolean NOT NULL,
|
|
"LockoutEnd" timestamp with time zone,
|
|
"LockoutEnabled" boolean NOT NULL,
|
|
"AccessFailedCount" integer NOT NULL,
|
|
CONSTRAINT "PK_AspNetUsers" PRIMARY KEY ("Id")
|
|
);
|
|
|
|
CREATE TABLE "AuditLogs" (
|
|
"Id" bigint GENERATED BY DEFAULT AS IDENTITY,
|
|
"Operator" character varying(50) NOT NULL,
|
|
"TenantId" character varying(50),
|
|
"Operation" character varying(20) NOT NULL,
|
|
"Action" character varying(20) NOT NULL,
|
|
"TargetType" character varying(50),
|
|
"TargetId" bigint,
|
|
"TargetName" character varying(100),
|
|
"IpAddress" character varying(50) NOT NULL,
|
|
"Description" character varying(500),
|
|
"OldValue" text,
|
|
"NewValue" text,
|
|
"ErrorMessage" text,
|
|
"Status" character varying(20) NOT NULL,
|
|
"CreatedAt" timestamp with time zone NOT NULL,
|
|
CONSTRAINT "PK_AuditLogs" PRIMARY KEY ("Id")
|
|
);
|
|
|
|
CREATE TABLE "Platform_Tenants" (
|
|
"Id" bigint GENERATED BY DEFAULT AS IDENTITY,
|
|
"TenantCode" character varying(50) NOT NULL,
|
|
"Name" character varying(100) NOT NULL,
|
|
"ContactName" character varying(50) NOT NULL,
|
|
"ContactEmail" character varying(100) NOT NULL,
|
|
"ContactPhone" character varying(20),
|
|
"MaxUsers" integer,
|
|
"CreatedAt" timestamp with time zone NOT NULL,
|
|
"UpdatedAt" timestamp with time zone,
|
|
"ExpiresAt" timestamp with time zone,
|
|
"Description" character varying(500),
|
|
"Status" integer NOT NULL,
|
|
"IsDeleted" boolean NOT NULL,
|
|
"RowVersion" bigint NOT NULL,
|
|
CONSTRAINT "PK_Platform_Tenants" PRIMARY KEY ("Id")
|
|
);
|
|
|
|
CREATE TABLE "AspNetRoleClaims" (
|
|
"Id" integer GENERATED BY DEFAULT AS IDENTITY,
|
|
"RoleId" bigint NOT NULL,
|
|
"ClaimType" text,
|
|
"ClaimValue" text,
|
|
CONSTRAINT "PK_AspNetRoleClaims" PRIMARY KEY ("Id"),
|
|
CONSTRAINT "FK_AspNetRoleClaims_AspNetRoles_RoleId" FOREIGN KEY ("RoleId") REFERENCES "AspNetRoles" ("Id") ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE "AspNetUserClaims" (
|
|
"Id" integer GENERATED BY DEFAULT AS IDENTITY,
|
|
"UserId" bigint NOT NULL,
|
|
"ClaimType" text,
|
|
"ClaimValue" text,
|
|
CONSTRAINT "PK_AspNetUserClaims" PRIMARY KEY ("Id"),
|
|
CONSTRAINT "FK_AspNetUserClaims_AspNetUsers_UserId" FOREIGN KEY ("UserId") REFERENCES "AspNetUsers" ("Id") ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE "AspNetUserLogins" (
|
|
"LoginProvider" text NOT NULL,
|
|
"ProviderKey" text NOT NULL,
|
|
"ProviderDisplayName" text,
|
|
"UserId" bigint NOT NULL,
|
|
CONSTRAINT "PK_AspNetUserLogins" PRIMARY KEY ("LoginProvider", "ProviderKey"),
|
|
CONSTRAINT "FK_AspNetUserLogins_AspNetUsers_UserId" FOREIGN KEY ("UserId") REFERENCES "AspNetUsers" ("Id") ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE "AspNetUserRoles" (
|
|
"UserId" bigint NOT NULL,
|
|
"RoleId" bigint NOT NULL,
|
|
CONSTRAINT "PK_AspNetUserRoles" PRIMARY KEY ("UserId", "RoleId"),
|
|
CONSTRAINT "FK_AspNetUserRoles_AspNetRoles_RoleId" FOREIGN KEY ("RoleId") REFERENCES "AspNetRoles" ("Id") ON DELETE CASCADE,
|
|
CONSTRAINT "FK_AspNetUserRoles_AspNetUsers_UserId" FOREIGN KEY ("UserId") REFERENCES "AspNetUsers" ("Id") ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE "AspNetUserTokens" (
|
|
"UserId" bigint NOT NULL,
|
|
"LoginProvider" text NOT NULL,
|
|
"Name" text NOT NULL,
|
|
"Value" text,
|
|
CONSTRAINT "PK_AspNetUserTokens" PRIMARY KEY ("UserId", "LoginProvider", "Name"),
|
|
CONSTRAINT "FK_AspNetUserTokens_AspNetUsers_UserId" FOREIGN KEY ("UserId") REFERENCES "AspNetUsers" ("Id") ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE INDEX "IX_AccessLogs_Action" ON "AccessLogs" ("Action");
|
|
|
|
CREATE INDEX "IX_AccessLogs_CreatedAt" ON "AccessLogs" ("CreatedAt");
|
|
|
|
CREATE INDEX "IX_AccessLogs_Status" ON "AccessLogs" ("Status");
|
|
|
|
CREATE INDEX "IX_AccessLogs_TenantId" ON "AccessLogs" ("TenantId");
|
|
|
|
CREATE INDEX "IX_AccessLogs_UserName" ON "AccessLogs" ("UserName");
|
|
|
|
CREATE INDEX "IX_AspNetRoleClaims_RoleId" ON "AspNetRoleClaims" ("RoleId");
|
|
|
|
CREATE UNIQUE INDEX "RoleNameIndex" ON "AspNetRoles" ("NormalizedName");
|
|
|
|
CREATE INDEX "IX_AspNetUserClaims_UserId" ON "AspNetUserClaims" ("UserId");
|
|
|
|
CREATE INDEX "IX_AspNetUserLogins_UserId" ON "AspNetUserLogins" ("UserId");
|
|
|
|
CREATE INDEX "IX_AspNetUserRoles_RoleId" ON "AspNetUserRoles" ("RoleId");
|
|
|
|
CREATE INDEX "EmailIndex" ON "AspNetUsers" ("NormalizedEmail");
|
|
|
|
CREATE UNIQUE INDEX "IX_AspNetUsers_PhoneNumber" ON "AspNetUsers" ("PhoneNumber");
|
|
|
|
CREATE UNIQUE INDEX "UserNameIndex" ON "AspNetUsers" ("NormalizedUserName");
|
|
|
|
CREATE INDEX "IX_AuditLogs_Action" ON "AuditLogs" ("Action");
|
|
|
|
CREATE INDEX "IX_AuditLogs_CreatedAt" ON "AuditLogs" ("CreatedAt");
|
|
|
|
CREATE INDEX "IX_AuditLogs_Operation" ON "AuditLogs" ("Operation");
|
|
|
|
CREATE INDEX "IX_AuditLogs_Operator" ON "AuditLogs" ("Operator");
|
|
|
|
CREATE INDEX "IX_AuditLogs_TenantId" ON "AuditLogs" ("TenantId");
|
|
|
|
CREATE INDEX "IX_Platform_Tenants_Status" ON "Platform_Tenants" ("Status");
|
|
|
|
CREATE UNIQUE INDEX "IX_Platform_Tenants_TenantCode" ON "Platform_Tenants" ("TenantCode");
|
|
|
|
INSERT INTO "__EFMigrationsHistory" ("MigrationId", "ProductVersion")
|
|
VALUES ('20260221065049_Initial', '10.0.0');
|
|
|
|
COMMIT;
|
|
|