27 lines
722 B
SQL
27 lines
722 B
SQL
-- CreateEnum
|
|
CREATE TYPE "Role" AS ENUM ('SUPER_ADMIN', 'ADMIN', 'USER');
|
|
|
|
-- CreateEnum
|
|
CREATE TYPE "Status" AS ENUM ('ACTIVE', 'INACTIVE', 'SUSPENDED');
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "User" (
|
|
"id" TEXT NOT NULL,
|
|
"email" TEXT NOT NULL,
|
|
"passwordHash" TEXT NOT NULL,
|
|
"fullName" TEXT NOT NULL,
|
|
"phone" TEXT,
|
|
"department" TEXT,
|
|
"position" TEXT,
|
|
"role" "Role" NOT NULL DEFAULT 'USER',
|
|
"status" "Status" NOT NULL DEFAULT 'ACTIVE',
|
|
"lastLoginAt" TIMESTAMP(3),
|
|
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" TIMESTAMP(3) NOT NULL,
|
|
|
|
CONSTRAINT "User_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "User_email_key" ON "User"("email");
|