refactor:替换自增id为cuid

This commit is contained in:
2024-11-27 15:25:57 +08:00
parent b02e2d2160
commit 5b382a124a
27 changed files with 161 additions and 114 deletions

View File

@@ -1,2 +0,0 @@
-- AlterTable
ALTER TABLE "sys_menu" ADD COLUMN "sort" INTEGER NOT NULL DEFAULT 0;

View File

@@ -1,22 +1,24 @@
-- CreateTable
CREATE TABLE "sys_user" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"name" TEXT,
"account" TEXT NOT NULL,
"password" TEXT NOT NULL,
"password_salt" TEXT NOT NULL,
"status" SMALLINT NOT NULL DEFAULT 0,
"avatar_id" INTEGER,
"avatar_id" TEXT,
"gender" SMALLINT NOT NULL DEFAULT 0,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
CONSTRAINT "sys_user_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "sys_role" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"code" TEXT NOT NULL,
"name" TEXT NOT NULL,
"status" SMALLINT NOT NULL DEFAULT 0,
@@ -26,26 +28,31 @@ CREATE TABLE "sys_role" (
-- CreateTable
CREATE TABLE "sys_user_role" (
"id" SERIAL NOT NULL,
"user_id" INTEGER NOT NULL,
"role_id" INTEGER NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"user_id" TEXT NOT NULL,
"role_id" TEXT NOT NULL,
CONSTRAINT "sys_user_role_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "files" (
"id" SERIAL NOT NULL,
CREATE TABLE "file" (
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"name" TEXT NOT NULL,
"path" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "files_pkey" PRIMARY KEY ("id")
CONSTRAINT "file_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "sys_permission" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"type" INTEGER NOT NULL,
CONSTRAINT "sys_permission_pkey" PRIMARY KEY ("id")
@@ -53,37 +60,49 @@ CREATE TABLE "sys_permission" (
-- CreateTable
CREATE TABLE "sys_menu" (
"id" SERIAL NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"name" TEXT NOT NULL,
"url" TEXT NOT NULL,
"parent_id" INTEGER NOT NULL DEFAULT 0,
"parent_id" TEXT,
"sort" INTEGER NOT NULL DEFAULT 0,
CONSTRAINT "sys_menu_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "sys_menu_permission" (
"id" SERIAL NOT NULL,
"menu_id" INTEGER NOT NULL,
"permission_id" INTEGER NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"menu_id" TEXT NOT NULL,
"permission_id" TEXT NOT NULL,
CONSTRAINT "sys_menu_permission_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "sys_role_permission" (
"id" SERIAL NOT NULL,
"role_id" INTEGER NOT NULL,
"permission_id" INTEGER NOT NULL,
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"role_id" TEXT NOT NULL,
"permission_id" TEXT NOT NULL,
CONSTRAINT "sys_role_permission_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "sys_config" (
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"key" TEXT NOT NULL,
"value" TEXT NOT NULL,
"remark" TEXT
"remark" TEXT,
CONSTRAINT "sys_config_pkey" PRIMARY KEY ("id")
);
-- CreateIndex

View File

@@ -13,17 +13,17 @@ datasource db {
// 系统用户表
model SysUser {
id Int @id @default(autoincrement()) /// 主键id
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
name String? /// 用户姓名
account String @unique /// 账户
password String /// 密码
passwordSalt String @map("password_salt") /// 密码盐
status Int @default(0) @db.SmallInt /// 用户状态
avatarId Int? @map("avatar_id") /// 用户头像id
avatar Files? @relation(fields: [avatarId], references: [id])
avatarId String? @map("avatar_id") /// 用户头像id
avatar File? @relation(fields: [avatarId], references: [id])
gender Int @default(0) @db.SmallInt /// 用户性别 0女 1男 2未知
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
userRole SysUserRole[]
@@index([avatarId])
@@ -32,7 +32,9 @@ model SysUser {
// 系统角色表
model SysRole {
id Int @id @default(autoincrement())
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
code String @unique
name String
status Int @default(0) @db.SmallInt /// 角色状态
@@ -44,11 +46,13 @@ model SysRole {
// 用户角色关联表
model SysUserRole {
id Int @id @default(autoincrement())
userId Int @map("user_id")
roleId Int @map("role_id")
user SysUser @relation(fields: [userId], references: [id], onDelete: Cascade)
role SysRole @relation(fields: [roleId], references: [id], onDelete: Cascade)
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
userId String @map("user_id")
roleId String @map("role_id")
user SysUser @relation(fields: [userId], references: [id], onDelete: Cascade)
role SysRole @relation(fields: [roleId], references: [id], onDelete: Cascade)
@@index([userId])
@@index([roleId])
@@ -56,19 +60,22 @@ model SysUserRole {
}
// 文件表
model Files {
id Int @id @default(autoincrement())
model File {
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
name String /// 文件名称
path String
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
sysUser SysUser[]
@@map("files")
@@map("file")
}
// 权限表
model SysPermission {
id Int @id @default(autoincrement())
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
type Int
sysRolePermission SysRolePermission[]
sysMenuPermission SysMenuPermission[]
@@ -78,10 +85,12 @@ model SysPermission {
// 系统菜单表
model SysMenu {
id Int @id @default(autoincrement())
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
name String
url String
parentId Int @default(0) @map("parent_id")
parentId String? @map("parent_id")
sort Int @default(0)
sysMenuPermission SysMenuPermission[]
@@ -90,9 +99,11 @@ model SysMenu {
// 菜单权限关联表
model SysMenuPermission {
id Int @id @default(autoincrement())
menuId Int @map("menu_id")
permissionId Int @map("permission_id")
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
menuId String @map("menu_id")
permissionId String @map("permission_id")
menu SysMenu @relation(fields: [menuId], references: [id], onDelete: Cascade)
permission SysPermission @relation(fields: [permissionId], references: [id], onDelete: Cascade)
@@ -103,9 +114,11 @@ model SysMenuPermission {
// 角色权限关联表
model SysRolePermission {
id Int @id @default(autoincrement())
roleId Int @map("role_id")
permissionId Int @map("permission_id")
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
roleId String @map("role_id")
permissionId String @map("permission_id")
role SysRole @relation(fields: [roleId], references: [id], onDelete: Cascade)
permission SysPermission @relation(fields: [permissionId], references: [id], onDelete: Cascade)
@@ -116,9 +129,12 @@ model SysRolePermission {
// 系统配置
model SysConfig {
key String @unique
value String
remark String?
id String @id @default(cuid()) /// 主键id
createdAt DateTime @default(now()) @map("created_at") /// 创建时间
updatedAt DateTime @updatedAt @map("updated_at") /// 修改时间
key String @unique
value String
remark String?
@@map("sys_config")
}

View File

@@ -18,9 +18,9 @@ async function main() {
},
});
const menus = [
{ name: '用户管理', url: 'user', parentId: 0 },
{ name: '角色管理', url: 'role', parentId: 0 },
{ name: '菜单管理', url: 'menu', parentId: 0 },
{ name: '用户管理', url: 'user' },
{ name: '角色管理', url: 'role' },
{ name: '菜单管理', url: 'menu' },
];
for (const menu of menus) {